自定义枚举类

  1. 不需要提供setXxx方法,因为枚举对象通常为只读
  2. 对枚举对象/属性使用final+static共同修饰,实现底层优化
  3. 枚举对象名通常全部大写
  4. 枚举对象根据需要,也可以有多个属性

class Season{
private String name;
private String description;
public String getName(){ return name; }
public String getDesciption(){ return description; }
private Season(String name,String description){
this.name = neme;
this.description = description;
}
public final static Season SPRING = new Season(“春天”,”温暖”);
public final static Season SUMMER = new Season(“夏天”,”炎热”);
public final static Season AUTUMN = new Season(“秋天”,”凉爽”);
public final static Season WINTER = new Season(“冬天”,”寒冷”);
}
自定义枚举类特点:

  1. 构造器私有化
  2. 本类内部创建对象
  3. 向外暴露对象(public final static)
  4. 可以提供get方法,不要提供set方法

enum枚举类

  1. 使用enum创建枚举类时 会默认继承Enum类,并且创建的类是一个final类
  2. 传统的public final static Season SPRING = new Season(“春天”,”温暖”);简化成SPRINNG(“春天”,”温暖’),注意构造器
  3. 如果使用无参构造器创建枚举对象,则实参列表和小括号可以省略
  4. 有多个枚举对象时,使用”,”间隔,并以分号结尾
  5. 枚举对象必须放在枚举类行首

enum Season{
SPRING(“春天”,”温暖”),
SUMMER(“夏天”,”炎热”),
AUTUMN(“秋天”,”凉爽”),
WINTER(“冬天”,”寒冷”);

  1. String name;<br /> String description;<br /> private Season(String name, String description) {<br /> this.name = name;<br /> this.description = description;<br /> }<br /> public String getName() {<br /> return name;<br /> }<br /> public String getDescription() {<br /> return description;<br /> }<br />}