JavaSE學(xué)習(xí)筆記——枚舉類

  • 如何自定義枚舉類
    1. 私有化類構(gòu)造器哑芹,保證不能在類外部創(chuàng)建對(duì)象實(shí)例闪金。
    2. 在類的內(nèi)部創(chuàng)建枚舉類的對(duì)象實(shí)例,聲明為private public staic final狗超。
    3. 如果必要干茉,設(shè)置類屬性谴忧,屬性聲明為private final,也就沒有set方法了角虫,
      因?yàn)楦鱾€(gè)屬性值在對(duì)象實(shí)例創(chuàng)建的時(shí)候沾谓,就已經(jīng)被構(gòu)造器賦值了。
  • enum關(guān)鍵字的使用
    1. 聲明enum類
    enum SeasonEnum{
        SPRING("spring","春暖花開"),
        SUMMER("summer", "烈日炎炎"),
        FALL ("autumn", "秋風(fēng)蕭瑟"),
        WINTER("winter","冰天雪地");
        
        private final String seasonName;
        private final String seasonDesc;
        
        //此處的屬性戳鹅,只有g(shù)et方法均驶,沒有set方法
         public String getSeasonName() {
             return seasonName;
         }
         public String getSeasonDesc() {
             return seasonDesc;
         }   
        
        private SeasonEnum(String aName, String aDesc){
            this.seasonName = aName;
            this.seasonDesc = aDesc;
        }
    
    1. values()
    //返回的是對(duì)應(yīng)枚舉類型的一個(gè)數(shù)組
            SeasonEnum[] seasons = SeasonEnum.values();
            for (int i = 0; i < seasons.length; i++) {
                System.out.println(seasons[i]);
            }
    
    1. valueOf(String name)
            //valueOf傳入一個(gè)形參,該形參的名稱是枚舉類內(nèi)部對(duì)象實(shí)例的名稱
            //否則報(bào)java.IllegalArgumentException異常
            String str = "WINTER";
            SeasonEnum season = SeasonEnum.valueOf(str);
            System.out.println(season);
    
  • 枚舉類實(shí)現(xiàn)接口的兩種方式
    1. 類內(nèi)部各個(gè)對(duì)象實(shí)例共享同一套該接口的抽象方法的實(shí)現(xiàn)。
    interface info{
        void show();
    }
    //枚舉類
    enum SeasonEnum implements info {
        SPRING("spring","春暖花開"),
        SUMMER("summer", "烈日炎炎"),
        FALL ("autumn", "秋風(fēng)蕭瑟"),
        WINTER("winter","冰天雪地");
    
        private final String seasonName;
        private final String seasonDesc;
    
        private SeasonEnum(String aName, String aDesc){
            this.seasonName = aName;
            this.seasonDesc = aDesc;
        }
    
        public String getSeasonName() {
            return seasonName;
        }
        public String getSeasonDesc() {
            return seasonDesc;
        }
    
        @Override
        public void show() {
            System.out.println("這是一個(gè)季節(jié)");
        }
    }
    //這種方式中枫虏,無(wú)論通過(guò)哪個(gè)實(shí)例調(diào)用show方法妇穴,都只會(huì)輸出“這是一個(gè)季節(jié)”。
    
    1. 讓類的每個(gè)對(duì)象實(shí)例隶债,都實(shí)現(xiàn)接口的抽象方法腾它,在通過(guò)對(duì)象實(shí)例調(diào)用被
      重寫的抽象方法的時(shí)候,執(zhí)行的效果不同死讹。
    interface info{
        void show();
    }
    enum SeasonEnum implements info {
        SPRING("spring","春暖花開"){
            @Override
            public void show() {
                System.out.println("春天在哪里");
            }
        },
        SUMMER("summer", "烈日炎炎"){
            @Override
            public void show() {
                System.out.println("夏天在哪里");
            }
        },
        FALL ("autumn", "秋風(fēng)蕭瑟"){
            @Override
            public void show() {
                System.out.println("秋天在哪里");
            }
        },
        WINTER("winter","冰天雪地"){
            @Override
            public void show() {
                System.out.println("冬天在哪里");
            }
        };
    
        private final String seasonName;
        private final String seasonDesc;
    
        private SeasonEnum(String aName, String aDesc){
            this.seasonName = aName;
            this.seasonDesc = aDesc;
        }
    }
    
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末瞒滴,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌妓忍,老刑警劉巖虏两,帶你破解...
    沈念sama閱讀 216,744評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異世剖,居然都是意外死亡定罢,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,505評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門搁廓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)引颈,“玉大人,你說(shuō)我怎么就攤上這事境蜕◎。” “怎么了?”我有些...
    開封第一講書人閱讀 163,105評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵粱年,是天一觀的道長(zhǎng)售滤。 經(jīng)常有香客問我,道長(zhǎng)台诗,這世上最難降的妖魔是什么完箩? 我笑而不...
    開封第一講書人閱讀 58,242評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮拉队,結(jié)果婚禮上弊知,老公的妹妹穿的比我還像新娘。我一直安慰自己粱快,他們只是感情好秩彤,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,269評(píng)論 6 389
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著事哭,像睡著了一般漫雷。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上鳍咱,一...
    開封第一講書人閱讀 51,215評(píng)論 1 299
  • 那天降盹,我揣著相機(jī)與錄音,去河邊找鬼谤辜。 笑死蓄坏,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的丑念。 我是一名探鬼主播涡戳,決...
    沈念sama閱讀 40,096評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼渠欺!你這毒婦竟也來(lái)了妹蔽?” 一聲冷哼從身側(cè)響起椎眯,我...
    開封第一講書人閱讀 38,939評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤挠将,失蹤者是張志新(化名)和其女友劉穎胳岂,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體舔稀,經(jīng)...
    沈念sama閱讀 45,354評(píng)論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡乳丰,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,573評(píng)論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了内贮。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片产园。...
    茶點(diǎn)故事閱讀 39,745評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖夜郁,靈堂內(nèi)的尸體忽然破棺而出什燕,到底是詐尸還是另有隱情,我是刑警寧澤竞端,帶...
    沈念sama閱讀 35,448評(píng)論 5 344
  • 正文 年R本政府宣布屎即,位于F島的核電站,受9級(jí)特大地震影響事富,放射性物質(zhì)發(fā)生泄漏技俐。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,048評(píng)論 3 327
  • 文/蒙蒙 一统台、第九天 我趴在偏房一處隱蔽的房頂上張望雕擂。 院中可真熱鬧,春花似錦贱勃、人聲如沸井赌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,683評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)族展。三九已至,卻和暖如春拔鹰,著一層夾襖步出監(jiān)牢的瞬間仪缸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,838評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工列肢, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留恰画,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,776評(píng)論 2 369
  • 正文 我出身青樓瓷马,卻偏偏與公主長(zhǎng)得像拴还,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子欧聘,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,652評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容