一、枚举
传统的方式:
•在某些情况下,一个类的对象是有限而且固定的。例如季节类,只能有 4 个对象
•手动实现枚举类:
—private 修饰构造器。
—属性使用 private final 修饰。
—把该类的所有实例都使用 public static final 来修饰。
练习代码:
1 public class Season { 2 3 //1、因为类的对象是固定的,所以类的属性是常量 4 public final String name; 5 public final String desc; 6 7 //2、因为类的对象是有限个,所以不能在类的外部创建对象,构造器必须私有 8 private Season(String name,String desc){ 9 this.name = name; 10 this.desc = desc; 11 } 12 13 //3、在类的内部创建对象,但要在类的外部能够访问到该对象,而且还不能修改。 14 public static final Season SPRING = new Season("春天","春风又绿江南岸"); 15 public static final Season SUMMER = new Season("夏天","映日荷花别样红"); 16 public static final Season FALL = new Season("秋天","秋水共长天一色"); 17 public static final Season WINTER = new Season("冬天","窗寒西岭千秋雪"); 18 19 public String getName() { 20 return name; 21 } 22 public String getDesc() { 23 return desc; 24 } 25 26 @Override 27 public String toString() { 28 return "Season [name=" + name + ", desc=" + desc + "]"; 29 } 30 }
1 public class TestSeason { 2 3 public static void main(String[] args) { 4 5 Season SPRING = Season.SPRING; 6 System.out.println(SPRING); 7 8 } 9 }