用来理解 Java 编程语言的 8 个图表

很多时候,一张图比你说 1000 个字能更有效的说清楚一个问题。我们列举了 8 个关于 Java 语言的图表,或许可以让你对 Java 有着更深入的认识。

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

下面的图表显示执行如下两行代码所发生的事:

 
  1. Strings="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.programcreek.com/2013/09/top-8-diagrams-for-understanding-java/

译文链接:http://www.oschina.net/news/44438/top-8-diagrams-for-understanding-java

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值