8張圖助你更好的理解java編程
所謂一圖勝萬言,本文中的這些圖都是從ProgramCreek網站中的
Java教程
中經過票選選出來的。能夠幫助你很好地回顧Java的一些知識,若是你是一個初學者,也能夠很好地幫助你理解Java。你能夠經過標題上的連接來閱讀更詳細的內容。
1. 字符串不變性
下圖顯示了下面的代碼發生了什麼事情。
- String s = "abcd";
- s = s.concat("ef");
2. equals()和hashCode()的關係
equals()和hashCode() 都是用來判斷兩個對象是否相等。二者之間的關係是:
- 若是兩個對象是相等(equal)的,那麼它們必定具備相同的哈希碼(hashcode)
- 若是兩個對象具備相同的哈希碼,它們可能相等,也可能不相等(equal)。
3. Java異常類的層次結構
下圖中紅色部分的異常必須在方法的throws子句中被捕獲或聲明。
4. 集合類的層次結構
注意Collections和Collection之間的不一樣。
5. Java同步
Java同步機制能夠經過一個建築物比喻來講明。
6. 別名(Aliasing)
別名(Aliasing)意味着能夠爲一個位置應用不一樣的別名,這些別名能夠有不一樣的類型。
7. 棧和堆
下圖顯示了方法和對象在運行時內存中的狀況。
8. JVM運行時數據區
下圖顯示了整個JVM運行時數據區。
歡迎關注本站公眾號,獲取更多信息