8張圖理解Java

一圖勝千言,下面圖解均來自Program Creek網站的Java教程,目前它們擁有最多的票選。java

一、字符串不變性

下面這張圖展現了這段代碼作了什麼微信

String s = "abcd";s = s.concat("ef");


二、equals()方法、hashCode()方法的區別

HashCode被設計用來提升性能。equals()方法與hashCode()方法的區別在於:ide

  1. 若是兩個對象相等(equal),那麼他們必定有相同的哈希值。函數

  2. 若是兩個對象的哈希值相同,但他們未必相等(equal)。性能


三、Java異常類的層次結構

圖中紅色部分爲受檢查異常。它們必須被捕獲,或者在函數中聲明爲拋出該異常。網站


四、集合類的層次結構

注意Collections和Collection的區別。(Collections包含有各類有關集合操做的靜態多態方法)spa


五、Java同步

Java同步機制可經過類比建築物來闡明。設計


六、別名

別名意味着有多個變量指向同一可被更新的內存塊,這些別名分別是不一樣的對象類型。orm


七、堆和棧

圖解代表了方法和對象在運行時內存中的位置。對象


八、Java虛擬機運行時數據區域

圖解展現了整個虛擬機運行時數據區域的狀況。


我有一個微信公衆號,常常會分享一些Java技術相關的乾貨。若是你喜歡個人分享,能夠用微信搜索「Java團長」或者「javatuanzhang」關注。

相關文章
相關標籤/搜索