zoukankan      html  css  js  c++  java
  • [Effective Java 读书笔记] 第6章 枚举和注解

    第三十条 用enum代替int

    总得来说,使用enum有几点好处

    1.编译时的类型安全,

    2.可以保证就是自己定义的值,不会有月结风险,

    3.每个枚举类型有自己的命名空间

    4.枚举可以添加任意的方法和域

    5.枚举类型是final的无法实例化,也就是实例可控的。。

    第三十一条 用实例域替代序数

    即不要依赖枚举值得定义顺序来指定他们的值,而应该讲枚举保存在一个实例域中,类似厦门的value值:

    public enum RewardType {
        RMB(1),
        OBJECT(2),
        ZAN(3),
        OTHERS(4),
        NOREWARD(5);
        private final int value;
        private RewardType(int value){
            this.value = value;
        }
        public int getValue(){
            return value;
        }
    }

    第三十二条 用EnumSet代替位域

    EnumSet类就是用来替代位域的,即将指定的枚举值写入一个EnumSet类型里,读取出来时就知道特定的枚举值有没有被设定过

    第 三十三条 用EnumMap替代序数索引

    即用枚举值来做Map的key

    第三十五条 注解优先于命名模式

    第三十七 使用override

  • 相关阅读:
    p1373
    考试总结 2018-5-6
    p1044与p1898
    p1905
    p1904 p1903
    p1177
    p1273  日常打表
    p1142
    并查集与并查集模板
    p1265
  • 原文地址:https://www.cnblogs.com/jiangz222/p/4934645.html
Copyright © 2011-2022 走看看