1.范型(Generics)
這個經(jīng)過漫長等待后被加入到類型系統(tǒng)中的特性,允許一個類型或方法操作不同類型的對象,并提供編譯期的類型安全。他加編譯期類型安全到集合構(gòu)架中,并且省去轉(zhuǎn)換的工作。看Java學習指南中的Generics課程。(JSR 14)
2.增強的for循環(huán)(Enhanced for Loop)
這個新語言結(jié)構(gòu)消除了在迭代集合和數(shù)組時,使用iterators和索引變量的潛在錯誤和轉(zhuǎn)換工作。(JSR 201)
3.自動裝箱和拆箱(Autoboxing/Unboxing)
這個便利工具消除了在簡單類型(如,int)和包裝類型(如,Integer)間手動轉(zhuǎn)換的工作。(JSR 201)
4.類型安全的枚舉(Typesafe Enums)
這個靈活的面向?qū)ο蟮拿杜e類型工具允許你創(chuàng)建包含任意方法和屬性的枚舉類型。他提供了類型安全枚舉模式(Effective Java, Item 21)所有好處,并去除了冗長及可能潛在的錯誤。(JSR 201)
5.可變參數(shù)(Varargs)
當調(diào)用接收可變長變量的參數(shù)列表時,需要將參數(shù)列表組裝成數(shù)組。這個便利工具消除了這些工作。
6.靜態(tài)導入(Static Import)
這個便利工具使你避免用類名來限定靜態(tài)元素,從而規(guī)避了"常量接口反模式"的缺點。(JSR 201)
7.注解(Annotations [Metadata])
這個語言特性,授權(quán)工具從源代碼中的注解產(chǎn)生樣板代碼,讓你在許多情況下避免寫樣板代碼。這引導了出一種"聲明式"編程方式,在這種方式中程序員告訴他應該如何被完成,由工具來生成代碼并完成他。他同時也消除了將輔助文件與源代碼文件保持同步更新的一些工作。替代的工作是這些信息可以被維護在源代碼文件中。(JSR 175)
NOTE:@Deprecated注解提供了一種方式來標識不建議使用的程序元素。參見:什么情況下,怎么樣來廢棄APIs(How and When To Deprecate APIs)。