學習 列舉類例項和它的匿名內部類例項的區別
阿新 • • 發佈:2022-05-15
/** * 列舉的例項注意點: * 1 提供類體部分時:該例項其實就是匿名內部類的例項比如SPRING,SUMMER * 2 沒有提供類體時該例項才是列舉類的例項.比如AUTUMN,WINTER. * * 檢視類的編譯,可以證明如上結論無論--->怎樣他們都統稱為列舉類的例項. * */ //測試: 列舉類例項和它的匿名內部類例項 public class Test { public static void main(String[] args) { Reason.SPRING.now(); //現在是春天 Reason.SUMMER.now(); //現在是夏天 Reason.AUTUMN.now(); //現在是什麼季節??? Reason.WINTER.now(); //現在是什麼季節??? } } enum Reason{ SPRING(){ //SPRING該匿名內部類重寫父類的now方法 @Override public void now() { System.out.println("現在是春天"); } },SUMMER() { //SUMMER該匿名內部類重寫父類的now方法 @Override public void now() { System.out.println("現在是夏天"); } },AUTUMN,WINTER; public void now(){ System.out.println("現在是什麼季節???"); } }