接口常量
直接在接口中定义常量
public interface Constants {
/**
* 中心
*/
public static final int CENTER = 0;
/**
* 顶部
*/
public static final int TOP = 1;
/**
* 左边
*/
public static final int LEFT = 2;
//。。。省略其他代码
}
接口中定义静态内部类
public interface Constants {
/**
*
* 公共常量
*
*/
public static class Public {
public static final String ID = "TESTID";
}
/**
* 颜色类型
*/
public static class ColorType {
public static final String RED = "red";
public static final String GREEN = "green";
}
//。。。省略其他代码
}
不能在接口中定义静态代码快。
常量类
public class ResponseCode {
/** 系统处理正常 */
public static final int SUCCESS_HEAD = 0;
/** 系统处理未知异常 */
public static final int EXCEPTION_HEAD = 1;
/** JSON解析错误 */
public static final int JSON_RESOLVE = 2;
/** 类型不匹配 */
public static final int TRANSTYPE_NO = 3;
/** Head - messageID未赋值 */
public static final int HEAD_messageID = 4;
/** Head - timeStamp未赋值 */
public static final int HEAD_timeStamp = 5;
/** Head - messengerID未赋值 */
public static final int HEAD_messengerID = 6;
/** Head - transactionType 未赋值 */
public static final int HEAD_transactionType = 7;
/** digest校验不通过 */
public static final int HEAD_DIGEST = 8;
/** src校验不通过 */
public static final int HEAD_SRC_NULL = 10;
/** 协议包含非法字符 */
public static final int ILLEGAL_MESSAGE = 11;
/** 数据库异常 */
public static final int DATABASE_EXCEPTION = 9;
public static final Map<Integer, String> RESP_INFO = new HashMap<Integer, String>();
static {
// Head 相关
RESP_INFO.put(SUCCESS_HEAD, "系统处理正常");
RESP_INFO.put(EXCEPTION_HEAD, "系统处理未知异常");
RESP_INFO.put(JSON_RESOLVE, "JSON解析错误");
RESP_INFO.put(TRANSTYPE_NO, "类型不匹配");
RESP_INFO.put(HEAD_messageID, "messageID未赋值");
RESP_INFO.put(HEAD_timeStamp, "timeStamp未赋值");
RESP_INFO.put(HEAD_messengerID, "messengerID未赋值");
RESP_INFO.put(HEAD_transactionType, "transactionType未赋值");
RESP_INFO.put(HEAD_DIGEST, "digest校验不通过");
RESP_INFO.put(DATABASE_EXCEPTION, "数据库异常");
RESP_INFO.put(HEAD_SRC_NULL, "src未赋值");
RESP_INFO.put(ILLEGAL_MESSAGE, "协议包含非法字符");
}
}
这种方法可以在类里面定义静态代码快。
枚举类
枚举类列举常量
ublic enum Size {
SMALL("S"),
MEDIUM("M"),
LARGE("L"),
EXTRA_LARGE("XL");
}
在类里面创建枚举类
public class Constants {
/**
* 订单状态
*/
public static enum OrderStats{
DELETE(0,"删除"),RESERVE(1,"订单预定"),CONFIRM(2,"订单确认"),COMPLETE(3,"订单完成"),CLOSE(4,"订单关闭");
private final Integer value;
private final String name;
private OrderStats(Integer value,String name){
this.value = value;
this.name = name;
}
public Integer getValue() {
return value;
}
public String getName() {
return name;
}
}
/**
* 性别
* <p>Company:rayootech</p>
* @author zhangxueshen
* @date 2016-6-14
*/
public static enum sex{
MAN("1","男"),FEMAN("2","女");
private sex(String value,String name){
this.value = value;
this.name = name;
}
private final String value;
private final String name;
public String getValue() {
return value;
}
public String getName() {
return name;
}
}
}
这种方式可以将很多的字典枚举放到同一个类里面。推荐使用这种方式