用來理解 Java 編程語言的 8 個圖表

發表于:2013-10-28來源:開源中國社區作者:oschina點擊數: 標簽:java
很多時候,一張圖比你說 1000 個字能更有效的說清楚一個問題。我們列舉了 8 個關于 Java 語言的圖表,或許可以讓你對 Java 有著更深入的認識。 1. 字符串不變性(String Immutability) 下面的圖表顯示執行如下兩行代碼所發生的事:

  很多時候,一張圖比你說 1000 個字能更有效的說清楚一個問題。我們列舉了 8 個關于 Java 語言的圖表,或許可以讓你對 Java 有著更深入的認識。

  1. 字符串不變性(String Immutability)

  下面的圖表顯示執行如下兩行代碼所發生的事:

  view source

print?
1 String s = "abcd"
2 s = s.concat("ef");
string-immutability

  2. equals() 和 hashCode()

  HashCode 方法設計用來提升性能,hashCode 和 equals 之間的差異有:

  1. 如果兩個對象是 equal 的,那么他們必須有相同的 hashCode

  2. 如果兩個對象有相同的 hashCode,但他們可以是不 equals 的

java-hashcode

  3. Java 異常類層次

  紅色的方塊為 Checked Exception,必須被捕獲或者是在方法中使用 throws 聲明拋出。

Exception-Hierarchy-Diagram

  4. 集合類層次

  注意 Collections 和 Collection 之間的差別。

  5. Java 同步

  Java 同步機制可以通過如下比喻來說明

  6. 混淆 Aliasing

  混淆意思是有多個別名指向同一位置,而且這些別名有著不同的類型

Java Aliasing

  7. 棧和堆

  該圖標顯示方法和對象在運行時內存中的位置

Java-array-in-memory

  8. JVM 運行時數據區域 Run-Time Data Areas

JVM runtime data area

原文轉自:http://www.oschina.net/news/44438/top-8-diagrams-for-understanding-java

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97