Java进阶
Java進(jìn)階_枚舉 enum
1 枚舉引入
Java是一門(mén)面向?qū)ο蟮恼Z(yǔ)言 ,當(dāng)我們創(chuàng)建好一個(gè)類以后,可以創(chuàng)建這個(gè)類的多個(gè)對(duì)象
但是一個(gè)類究竟創(chuàng)建多少個(gè)對(duì)象,并且對(duì)象代表的值我們是無(wú)法限制的
所以,如果開(kāi)發(fā)中需要一組值,需要的數(shù)據(jù)是明確的,就可以使用枚舉
2 枚舉概念
枚舉類是一種特殊形式的Java類 ,枚舉類的對(duì)象個(gè)數(shù)是有限且明確的。比如:
星期:Monday(星期一)…Sunday(星期天)
性別 :Man(男)、Woman(女)
季節(jié):Spring(春天)…Winter(冬天)
支付方式:Cash(現(xiàn)金)、WeChatpay(微信支付)、AliPay(支付寶支付)、BankCard(銀行卡支付)、CreditCard(信用卡支付)
訂單狀態(tài) :Nonpayment(未付款)、Paid(已付款)、Fulfilled(已配貨)、Delivered(已發(fā)貨)、Return(退貨)、Checked(已收貨)
所以,如果當(dāng)我們需要定義一組常量表示不同的狀態(tài)時(shí) ,就建議使用枚舉類
JDK5以前是需要自定義枚舉類的,JDK5以后可以使用關(guān)鍵字enum來(lái)定義枚舉類
我們先來(lái)用傳統(tǒng)class的方式來(lái)實(shí)現(xiàn)自定義枚舉類:
3 自定義枚舉類
枚舉類中聲明的每一個(gè)枚舉值代表枚舉類的一個(gè)實(shí)例對(duì)象
與Java中的普通類一樣