Java7新特性
阿新 • • 發佈:2021-08-10
二進位制字面量
jdk7開始,終於可以用二進位制來表示整數(byte,short,int和long)。
使用二進位制字面量的好處是,可以使程式碼更容易被理解。語法非常簡單,
只要在二進位制數值前面加0b或0B
舉例:int x=0B110110
數字字面量可以出現下劃線
為了增強對數值的閱讀性,如我們經常把資料用逗號分隔一樣,JK7提供了_對數值分隔。
舉例:int x=1_000;
注意事件:
不能出現在進位制標識和數值之間
不能出現在數值開頭和結尾
不能出現在小數點旁邊
switch語句可以用字串
String value="呂世昊"; switch (value) { case "呂世昊": System.out.println("嗯嗯他是人才"); break; default: System.out.println("嗯嗯他是不人才"); break; }
泛型簡化
//後面的泛型型別可以不需要寫,這叫泛型推斷,也可以叫菱形泛型
ArrayList<String> arrayList=new ArrayList<>();
異常的多個catch合併
Java 7之前的版本: 如果用一個catch塊處理多個異常,可以用管道符(|)將它們分開,在這種情況下異常引數變數(ex)是定義為final的,所以不能被修改。這一特性將生成更少的位元組碼並減少程式碼冗餘。 Java 7之前的版本: catch (IOException ex) { logger.error(ex); throw new MyException(ex.getMessage()); catch (SQLException ex) { logger.error(ex); throw new MyException(ex.getMessage()); }catch (Exception ex) { logger.error(ex); throw new MyException(ex.getMessage()); } 在Java 7中,我們可以用一個catch塊捕獲所有這些異常: catch(IOException | SQLException | Exception ex){ logger.error(ex); throw new MyException(ex.getMessage()); }
try-with-resources語句
格式:try(必須是java.lang.AutoCloseable的子類物件){...} 好處: 資源自動釋放,不需要close()了 把需要關閉資源的部分都定義在這裡就ok了 主要是沉體系的物件是這個介面的子類(看JDK7的API) /** * 個性簽名:今天的努力只要對得起自己就滿足了 * 建立人:呂世昊 * 建立時間:2019年3月22日 下午1:48:41 * @version */ public class Test3 implements AutoCloseable{ public static void main(String[] args) { //1.7之後,只要實現了AutoCloseable介面 try(Test3 test=new Test3()){ System.out.println("--執行main方法--"); System.out.println(1/0); }catch (Exception e) { System.out.println("--exception--"); } System.out.println("-------------------"); //JDK1.7之前,釋放資源方式 try { System.out.println("--執行main方法--"); System.out.println(1/0); } catch (Exception e) { System.out.println("--exception--"); }finally { System.out.println("--close--"); } } @Override public void close() throws Exception { // TODO Auto-generated method stub System.out.println("close"); } }
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
作者:呂世昊 出處:https://www.cnblogs.com/lvshihao/p/15126010.html個性簽名:學習如逆水行舟,不進則退!
如果覺得這篇文章對你有小小的幫助的話,記得在右下角點個“推薦”哦,博主在此感謝!