Java复习——枚举与注解】的更多相关文章

枚举 枚举就是让某些变量的取值只能是若干固定值中的一个,否则编译器就会报错,枚举可以让编译器在编译阶段就控制程序的值,这一点是普通变量无法实现的.枚举是作为一种特殊的类存在的,使用的是enum关键字修饰 枚举常量 枚举常量默认都是使用static final修饰的,所以语法建议使用大写,一个枚举类在第一次被实例化的时候,这些常量就会被创建,这些常量都是枚举类子类的对象 public enum WeekDay{ //每一个枚举的元素(枚举常量)就是一个枚举类子类的对象,是使用static fina…
注解的写法和接口很类似,都采用了关键字interface,而且都不能有实现代码,常量定义默认都是pulbic static final类型的. 他们的主要不同点是:注解在interface前加上@字符,而且不能继承,不能实现,这经常会给我们的开发带来一些障碍. 分析一个ACL(Access Contorl List ,访问控制列表)设计案例..看看如何避免这些障碍. ACL中有三个重要的元素: 1.资源,有哪些信息是要被控制起来的. 2.权限级别,不同的访问者在规划在不同的级别中. 3.控制器(…
enum Season{ SPRING("spring","春暖花开"), SUMMER("summer","夏日炎炎"), AUTUMN("autumn","秋高气爽"), WINTER("winter","白雪皑皑"); } 其实上面等等同于: class Season{ Public static final Season SPRING =…
Java SE 进阶 1.Enum 枚举对象名通常使用全部大写,常量的命名规范 构造器私有化 本类内部创建一组对象 对外暴露对象(通过为对象添加 public final static 修饰符) 可以提供 get 方法,但是不要提供 set //1. 将构造器私有化,目的防止 直接new //2. 去掉setXxx方法,防止属性被修改 //3. 再Season内部,直接创建固定的对象 //4. 优化,可以加入 final 修饰符 //演示自定义枚举实现 class Season{ private…
第三十条:用enum代替int常量enum的简单用法. enum Operation { PLUS("+") { double apply(double x, double y) { return x + y; } }, MINUS("-") { double apply(double x, double y) { return x - y; } }; private final String symbol; private Operation(String sym…
JDK1.5新增的enum关键字用于定义枚举类. 枚举类和普通类的区别: 使用enum定义的枚举类默认继承了java.lang.Enum类: 枚举类的构造器只能使用private修饰符: 枚举类的所有实例必须在枚举类中显示列出(分隔:结尾).列出的实例系统会自动添加public static final修饰: 所有的枚举类都提供了一个values方法,该方法可以很方便地遍历所有的枚举值: JDK1.5中可以在switch表达式中使用枚举类的对象作为表达式,case子句可以直接使用枚举值的名字,无…
Java的枚举.注解与方法... 第30条 用枚举代替int常量 第31条 用实例域代替序数 可以考虑定义一个final int 代替枚举中的 ordinal() 方法. 第32条 用EnumSet代替位域(bit field) 如果底层的枚举类型不超过64个,则整个 EnumSet 就是用单个 long 来表示,因此性能上比得上位域的性能. 第33条 用EnumMap代替序数索引 第34条 用接口模拟可伸缩的枚举 定义一个接口,然后根据需要,采用不同的枚举,枚举都实现相同的接口,在应用中采用接…
建议88:用枚举实现工厂方法模式更简洁 工厂方法模式(Factory Method Pattern)是" 创建对象的接口,让子类决定实例化哪一个类,并使一个类的实例化延迟到其它子类".工厂方法模式在我们的开发中经常会用到.下面以汽车制造为例,看看一般的工厂方法模式是如何实现的,代码如下: //抽象产品 interface Car{ } //具体产品类 class FordCar implements Car{ } //具体产品类 class BuickCar implements Ca…
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4255663.html 第六章      枚举和注解 30.      用enum代替int常量 枚举类型是指由一组固定的常量组成合法值的类型,例如一年中的季节或一副牌中的花色.在没引入枚举时,一…
Java笔记---枚举类和注解 一.枚举类 自定义枚举类 方式一:JDK5.0之前自定义枚举类 class Seasons { //1. 声明Seasons对象的属性 private final String SeasonName; private final String SeasonDescrp; //2. 私有化类的构造器, 并给对象赋值初始化 private Seasons(String SeasonName, String SeasonDescrp) { this.SeasonDesc…