1、为什么使用枚举?
使用枚举的地方会有更强的类型约束,编译器帮我们检查入参类型,规避潜在风险!
2、枚举的常用方法
ordinal序数name名称
valueof 根据字符串取枚举对象
3、枚举的扩展
在枚举类里面可以声明属性、构造函数、方法等!
4、专用于枚举的集合类
EnumSet
EnumSet enumSet = EnumSet.of(UserState.DISABLE,UserState.NORMAL);
System.out.println(enumSet.contains(UserState.LOCKEN));//false
EnumMap
EnumMap enumMap = new EnumMap(UserSatte.class);
enumMap.put(UserState.NORMAL,1);
enumMap.put(UserState.LOCKED,1);
5、单例模式、策略模式