(转)用来理解Java的8个图表
很多時(shí)候,一張圖比你說 1000 個(gè)字能更有效的說清楚一個(gè)問題。我們列舉了 8 個(gè)關(guān)于 Java 語(yǔ)言的圖表,或許可以讓你對(duì) Java 有著更深入的認(rèn)識(shí)。
1.字符串不變性(String Immutability)
下面的圖表顯示執(zhí)行如下兩行代碼所發(fā)生的事:
1 String s = "abcd"; 2 s = s.concat("ef");2. equals() 和 hashCode()
HashCode 方法設(shè)計(jì)用來提升性能,hashCode 和 equals 之間的差異有:
1. 如果兩個(gè)對(duì)象是 equal 的,那么他們必須有相同的 hashCode.
2. 如果兩個(gè)對(duì)象有相同的 hashCode,但他們可以是不 equals 的.
3.?Java 異常類層次
紅色的方塊為 Checked Exception,必須被捕獲或者是在方法中使用 throws 聲明拋出:
4.?集合類層次
注意 Collections 和 Collection 之間的差別:
5. Java 同步
Java 同步機(jī)制可以通過如下比喻來說明:
6. 混淆 Aliasing
混淆意思是有多個(gè)別名指向同一位置,而且這些別名有著不同的類型:
7. 棧和堆
該圖標(biāo)顯示方法和對(duì)象在運(yùn)行時(shí)內(nèi)存中的位置:
8. JVM 運(yùn)行時(shí)數(shù)據(jù)區(qū)域 Run-Time Data Areas
轉(zhuǎn)載于:https://www.cnblogs.com/myCodingSky/p/3655504.html
總結(jié)
以上是生活随笔為你收集整理的(转)用来理解Java的8个图表的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Socket阻塞与非阻塞,同步与异步、I
- 下一篇: 黑马程序员——Java集合基础知识之Ma