1. 程式人生 > >黑馬程式設計師 【】java學習之路——列舉小結

黑馬程式設計師 【】java學習之路——列舉小結

                                     ------- android培訓java培訓、期待與您交流! ----------

(注:小弟剛自學一小段時間,這是我學習中的認識,簡單總結下,大神們不要拍我哈 , 說的不對之處還請指出來,多多學習)

列舉是JDK1.5出現的新特性;

列舉也是一種類,只是不是用關鍵字class修飾的類,而是用enum關鍵字修飾的類。這一點就可以體現出列舉是一種特殊的類。下面由我說一下為什麼說列舉是一種特殊的類。

1:我認為列舉的由來

首先在我現有的基礎上,我認為列舉就是為了給外部提供一些特定的元素,外部引用除了列舉類內部提供的物件,不能再使用其他的方法,並且還不能通過列舉類建立物件(有點像單例哈)

2:因為不能建立物件,大家應該也猜到既然是類,但是又不能建立物件,則列舉的建構函式一定是私有的。確實,列舉的建構函式預設必須是私有的。

3:列舉建構函式的另一個特點,就是必須在列舉元素列表之下,這有區別於其他普通類的建構函式可以放在類的任意位置。這也是特殊之處。

4:物件,列舉的物件列表(元素列表),當有多個物件時之間用“,”隔開,若是此列舉類只有物件類表,則最後可以不寫分號:如下:

enum Demo
{

  <span style="white-space:pre">	</span>obj1,obj2,obj3,obj	
}

若是後面還有構造引數,則必須寫上分號,如下:
enum Demo
{

  	obj1,obj2,obj3,obj;
<span style="white-space:pre">	</span>private enum Demo();	
}
5:列舉類的物件預設為靜態的,可以直接類名.物件名 直接呼叫。

6:列舉不能繼承

暫時總結這些~不對之處請指正哈!