枚举类常量的定义类

本文详细介绍了公共枚举在编程中的使用,包括查询、创建、验证等操作,以及其在不同场景下的应用实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

public interface CommonEnumTest {

    public static final String QUERYBYORDERID = "queryByOrderId";
    public static final String QUERYBYCUSTID = "queryByCustId";
    public static final String CREATEORDER = "createOrder";
    public static final String QUERYRECHARGELOG = "queryRechargeLog";
    public static final String QUERYRECHARGELIMIT = "queryRechargeLimit";
    public static final String CREATEPREORDER = "createPreOrder";
    public static final String ORDERPAY = "orderPay";
    public static final String SENDMESSAGE2EL = "sendMessage2EL";
    public static final String CHECKNEWINVUSR = "checkNewInvUsr";
    public static final String MERID ="site";
    public static final String MERID_M = "mobile";
    public static final String VERSION = "10";
    public static final String MERPRIV = "";
    public static final String REQEXT = "";
    public static final String MERKEY = "TS2015";
    public static final String ACCOUNTBASEDA = "BASEDA";//基本借记户
public static final String ACCOUNTSPEDA = "SPEDA";//专用账户
public static final String ACCOUNTPRODDA = "PRODDA";//产品账户
public static final String ACCOUNTPA = "PA"; //积分账户
public static enum OrderPayResultType{
        UNPAY("01", "未支付")
        , CANCEL("02", "订单取消")
        , WAIT_BALANCE_PAY("03", "等待支付尾款")
        , PAY_SUCCESS("04", "支付成功")
        , PAY_FAIL("05", "支付失败")
        , REFUND_UNAUDIT("06", "退款待审核")
        , REFUND_PROCESS("07", "退款处理中")
        , REFUND_SUCCESS("08", "退款成功")
        , REFUND_FAIL("09", "退款失败")
        , REFUND_REJECT("10", "退款拒绝")
        , ORDER_CLOSE("11", "订单关闭")
        , PAY_PROCESS("12", "支付处理中");

        private final String code;
        private final String desc;

        public String getCode() {
            return code;
        }
        public String getDesc() {
            return desc;
        }
        private OrderPayResultType(String code, String desc) {
            this.code = code;
            this.desc = desc;
        }
        public static String getDescByCode(String selectCode) {
            for(int i = 0; i < OrderPayResultType.values().length; i++){
                if(OrderPayResultType.values()[i].code.equals(selectCode)){
                    return OrderPayResultType.values()[i].getDesc();
                }
            }
            return "";
        }
    }

    public static enum BankImage{
        BankImage1("ABC","ABC.png"),
        BankImage2("AHRCU","AHRCU.png"),
        BankImage3("bank_11","bank_11.png"),
        BankImage4("bank_way","bank_way.png"),
        BankImage5("BCCB","BCCB.png"),
        BankImage6("BOCOM","BOCOM.png");

        private final String code;
        private final String desc;

        public String getCode() {
            return code;
        }
        public String getDesc() {
            return desc;
        }
        private BankImage(String code, String desc) {
            this.code = code;
            this.desc = desc;
        }
        public static String getDescByCode(String selectCode) {
            for(int i = 0; i < BankImage.values().length; i++){
                if(BankImage.values()[i].code.equals(selectCode)){
                    return BankImage.values()[i].getDesc();
                }
            }
            return "";
        }
    }

    public static enum BailFlag{
        BAILFLAG_YES("1","支持 "),
        BAILFLAG_NO("2","不支持");

        private final String code;
        private final String desc;

        public String getCode() {
            return code;
        }
        public String getDesc() {
            return desc;
        }
        private BailFlag(String code, String desc) {
            this.code = code;
            this.desc = desc;
        }

        public static String getDescByCode(String selectCode) {
            for(int i = 0; i < BailFlag.values().length; i++){
                if(BailFlag.values()[i].code .equals(selectCode)){
                    return BailFlag.values()[i].getDesc();
                }
            }
            return "";
        }
    }

    public static enum BailCalType{
        BAILCALTYPE_RATE("1","按比例 "),
        BAILCALTYPE_AMOUNT("2","定额");

        private final String code;
        private final String desc;

        public String getCode() {
            return code;
        }
        public String getDesc() {
            return desc;
        }
        private BailCalType(String code, String desc) {
            this.code = code;
            this.desc = desc;
        }

        public static String getDescByCode(String selectCode) {
            for(int i = 0; i < BailCalType.values().length; i++){
                if(BailCalType.values()[i].code .equals(selectCode)){
                    return BailCalType.values()[i].getDesc();
                }
            }
            return "";
        }
    }
}

 

### 如何定义枚举类Java 中,枚举类通过 `enum` 关键字来定义。它是一种特殊的,用于表示一组固定的常量值[^1]。以下是关于如何定义枚举类的详细介绍以及示例。 #### 枚举类的基本结构 枚举类通常由一系列固定不变的常量组成,这些常量可以被实例化并具有自己的属性和行为。下面是一个简单的枚举类定义: ```java public enum Color { RED, GREEN, BLUE; } ``` 在这个例子中,`Color` 是一个枚举类,包含了三个枚举常量:`RED`, `GREEN`, 和 `BLUE`。 #### 带有构造函数和字段的枚举类 除了简单地列出常量外,还可以为枚举类添加私有的构造函数、成员变量和其他方法。这使得每个枚举常量能够拥有自己独特的状态和行为。例如: ```java public enum Planet { MERCURY(3.30E23), VENUS(4.87E24), EARTH(5.98E24); private final double mass; // 私有构造函数 Planet(double mass) { this.mass = mass; } public double getMass() { return mass; } } ``` 在此代码片段中,`Planet` 枚举类不仅列出了行星名称作为常量,还为其分配了一个质量参数,并提供了访问该参数的方法 `getMass()`。 #### 定义带方法的枚举类 枚举类中的每一个常量都可以实现不同的方法版本。这种能力允许我们根据不同情况执行特定逻辑。如下所示: ```java public enum Operation { PLUS { @Override public double apply(double a, double b) { return a + b; } }, MINUS { @Override public double apply(double a, double b) { return a - b; } }; public abstract double apply(double a, double b); } ``` 这里展示了如何让每个操作符(加法和减法)都有其独立的行为实现方式。 --- ### 总结 以上介绍了三种不同层次复杂度下的枚举类定义形式——从最基础的形式到更复杂的带有自定义数据与功能的情况。利用这些技术可以帮助开发者创建更加灵活且易于维护的应用程序组件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值