年初四好,一圖勝千言,下面圖解均來自Program Creek 網站,目前它們擁有最多的票選。
如果圖解沒有闡明問題,那麼你可以借助它的标題來一窺究竟。
1
字元串不變性
下面這張圖展示了這段代碼做了什麼
[code ]String s = "abcd";
s = s.concat("ef");[/code]
2
equals()方法、hashCode()方法的差別
HashCode被設計用來提高性能。equals()方法與hashCode()方法的差別在于:
如果兩個對象相等(equal),那麼他們一定有相同的哈希值。
如果兩個對象的哈希值相同,但他們未必相等(equal)。
3
Java異常類的層次結構
圖中紅色部分為受檢查異常。它們必須被捕獲,或者在函數中聲明為抛出該異常。
4
集合類的層次結構
注意Collections和Collection的差別。(Collections包含有各種有關集合操作的靜态多态方法)
5
Java同步
Java同步機制可通過類比建築物來闡明。
6
别名
别名意味着有多個變量指向同一可被更新的記憶體塊,這些别名分别是不同的對象類型。
7
堆和棧
圖解表明了方法和對象在運作時記憶體中的位置。
8
Java虛拟機運作時資料區域
圖解展示了整個虛拟機運作時資料區域的情況。