Enum類中一般應該包括特定的枚舉對象,對這些枚舉對象加上一些描述能夠很方便。這樣就可使用枚舉的構造函數,用於描述枚舉對象的具體特徵。一般構造函數爲私有的,這也很正常,由於枚舉類自己就不容修改。可使用toString()覆蓋原有方法,對該枚舉對象進行自定義描述。 java
package date0818.demo1; /** * 枚舉類型能夠有構造函數 * @author zzw922cn * */ public enum Education { //注意,枚舉類型中間用逗號隔開 Primary("5-12"), Middle("13-15"), Senior("16-18"), College("19-22"); //內部字段 private String epoch; //構造函數需爲私有,不容許外界建立枚舉對象 private Education(String epoch) { this.epoch=epoch; } //獲取epoch字段 public String getEpoch() { return epoch; } //覆蓋Object的toString方法 @Override public String toString() { return super.toString()+"(\""+epoch+"\")"; } //主方法 public static void main(String[] args) { //注意values()方法並非Enum自帶的方法,而是enum對象編譯器自帶的 //java.lang.annotation Enum ElementType包含了values()方法 for(Education edu:Education.values()) { System.out.println(edu); } } }
Primary("5-12") Middle("13-15") Senior("16-18") College("19-22")