写这个系列的原因,其实网上已经有无数源码分析的文章了,多一篇不多,少一篇不少,但为什么还要写这部分文章呢?于私,其一,上班族已经很久没有打过完整的一整段有意义的话,算是锻炼个人的书写、总结能力,其二,别人的代码永远是别人的,只有亲自做过才知道其中的滋味,其三,若干年后如果博客园还在,也算是一段美好的回忆。于公,网上有大部分的文章属于copy,虽然copy没问题,但是看多了会觉得千篇一律,而且少了很多技术细节,我打算写得详细一点,啰嗦一点,如果能让刚刚入门Java的同学有所收获,那就心满意足了。首先贴上 Object.java 的代码。
这里面每一个方法都十分重要,但有几个方法在很多时候都需要重写。我们先着重讲解下面这几个:
不重写equals比较的是对象是否为同一对象。不重写hashCode()会影响Map、Set的操作。
如何重写?
在Java中,当要连接对象和字符串时,会自动调用对象的toString()方法,默认为 类名@16进制哈希值,最好重写,增加可读性。
同样,如果你依赖了Lombok,可以使用@ToString。
相关阅读
Original: https://www.cnblogs.com/kwanwoo/p/13591195.html
Author: Kwanwooo
Title: Java源码赏析(一)Object 类
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/589609/
转载文章受原作者版权保护。转载请注明原作者出处!