什么是java java5的新特性都有什么?枚舉enum?
java5的新特性都有什么?枚舉enum?Java5的發(fā)布為類型系統(tǒng)帶來了三個主要新特性,枚舉、注解和泛型。枚舉類型(Enum)在某些方面與類相似,但是它的屬性只能是指定數(shù)量的實例,每個實例都不同并且
java5的新特性都有什么?枚舉enum?
Java5的發(fā)布為類型系統(tǒng)帶來了三個主要新特性,枚舉、注解和泛型。枚舉類型(Enum)在某些方面與類相似,但是它的屬性只能是指定數(shù)量的實例,每個實例都不同并且在類描述中指定。主要用于“類型安全的常量”,而不是當(dāng)時普遍使用的小整數(shù)常量,枚舉構(gòu)造同時還允許附加的模式,有時候這非常有用。注解(Annotation)與接口相關(guān),聲明注解的關(guān)鍵字是@interface,以@開始表示這是個注解類型。正如名字所建議的,它們用于給Java代碼元素做注釋,提供附加信息,但不影響其行為。此前,Java曾使用“標(biāo)記接口(Markerinterface)”來提供這種元數(shù)據(jù)的有限形式,但注解被認(rèn)為更有靈活性。Java泛型提供了參數(shù)化類型,其想法是一種類型能扮演其它類型對象的“容器”,無需關(guān)心被包含類型的具體細(xì)節(jié)。裝配到容器中的類型通常稱為類型參數(shù)。Java5引入的特性中,枚舉和注解為引用類型提供了新的形式,這需要編譯器特殊處理,并且有效地從現(xiàn)有類型層級結(jié)構(gòu)分離。泛型為Java的類型系統(tǒng)增加了顯著額外的復(fù)雜性,不僅僅因為它們是純粹的編譯時特性,還要求Java開發(fā)人員應(yīng)注意,編譯時和運行時的類型系統(tǒng)彼此略有不同。