[Java核心技術]五-繼承(枚舉類)


Java枚舉類型(enum)

  • 枚舉類型都是繼承了Enum類(是一個抽象類)的一個,我們可以向enum類中添加方法和變量等。編譯再反編譯可以看到枚舉類型對應的類的內容。
  • 每個枚舉常量都對應一個Enum類的實例。
  • 例子
public enum Day2 {
    MONDAY("星期一"),
    TUESDAY("星期二"),
    WEDNESDAY("星期三"),
    THURSDAY("星期四"),
    FRIDAY("星期五"),
    SATURDAY("星期六"),
    SUNDAY("星期日");//逗號分隔,分號結束

    private String desc;

    /**
     * 私有構造,防止被外部調用
     * @param desc
     */
    private Day2(String desc){
        this.desc=desc;
    }

    public String getDesc(){
        return desc;
    }
}

我們所寫的構造函數只能被編譯器調用,事實上,MONDAY("星期一")表明了會調用構造函數

     private Day2(String desc){
        this.desc=desc;
    }

並為實例MONDAY的屬性desc賦值"星期一".

抽象類

  • 抽象類和抽象方法用abstract關鍵字修飾。
  • 抽象類不一定有抽象方法,有抽象方法的類一定是抽象類或者是接口。
    • 一個抽象類如果沒有抽象方法,是可以定義為抽象類的,這么做的目的只有一個,就是不讓其他類創建本類對象,交給子類完成。
  • 抽象類不能實例化。
  • 抽象類的子類:要么是抽象類,要么重寫抽象類中的所有抽象方法。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM