在Java SE 7中,整型(byte, short, int和long)也可以使用二進制計數(shù)方式來表示。為了指定二進制常量,需要為數(shù)字增加一個0b或0B的前綴。
2.應(yīng)用于數(shù)值常量的下劃線(Underscores in Numeric Literals)
帶下劃線的任意數(shù)字,可以出現(xiàn)在數(shù)值常量的任意數(shù)字之間。利用這個特性,你可以將數(shù)值劃分成不同的數(shù)字組,這樣可以增加代碼的可讀性。
3.switch語句中支持String值 (Strings in Switch Statements)
在switch語句的表達式中可以使用String類型。
4.范型對象創(chuàng)建時支持類型推導(dǎo)(Type Inference for Generic Instance Creation)
由于編譯器可以根據(jù)上下文推導(dǎo)出類型參數(shù),所以可以使用空類型參數(shù)(<>)替換在調(diào)用范型類型構(gòu)造函數(shù)時所要求的類型參數(shù)。
5.改進了在支持可變參數(shù)的方法中使用非具體(Non-Refiable,如通過類型參數(shù)指定)的形參時,出現(xiàn)的編譯器警告和錯誤(Improved Compiler Warnings and Errors When Using Non-Reifiable Formal Parameters with Varargs Methods)
使用非具體的形式參數(shù)聲明可變參數(shù)的方法或構(gòu)造函數(shù)時,Java SE 7編譯器會在聲明的地上給出一個警告信息。Java SE 7引入了編譯器選項-Xlint:varargs和注解@SafeVarargs和@SuppressWarnings({"unchecked", "varargs"})來禁止警告。
6.增加try-with-resources語句(The try-with-resources Statement)
try-with-resources語句是一個聲明了一個或多個資源的try語句。資源是指在程序使用完成后必須關(guān)閉的一個對象。try-with-resources語句確保每個資源在該語句結(jié)束后被關(guān)閉。任何實現(xiàn)java.io.Closeable接口和新java.lang.AutoCloseable接口的對象,可以被看作一種資源。java.io.Inputstream,OutputStream,Reader,Writer,java.sql.Connection,Statement,ResultSet類被重新實現(xiàn),并實現(xiàn)了AutoCloseable接口。以上提到這些類,也可以被用作是try-with-resources語句中的一種資源。
7.支持捕獲多個異常,使用改進的類型檢測重新拋出異常(Catching Multiple Exception Types and Rethrowing Exceptions with Improved Type Checking)
一個單catch塊可以處理多種類型的異常。此外,編譯器相比之前的實現(xiàn)版本,對重新拋出的異常分析的更準(zhǔn)確。你使你可以在一個方法聲明的throws語句中指定多個特定異常類型。