1、equals()方法:
* ^ equals方法强调比较的值的是否相等
* ==强调对象的地址是否相同
* ^ s1 和 s2的值都保存在对内存中
* s3 和 s4的值都保存在占内存的字符串缓冲池中,缓存池的分配原则是按值是否相同来分配。
* ^ 如果值相同则分在一起,指向他们的引用的hashCode()值也相同。如果不同,则不分在一起,也就不==了。
* 所以s3和s4是相同的两个引用,而s5和他们俩内存地址不同,hashCode值当然也不同了
*
* 2、finalize()方法:
* 由于在Object()类的以下所有子类中的对象都是在java的垃圾回收前自动调用此Object类(父类)的此finalize方法。
* 所以可以重写这样运行的过程可以看的更清楚。
*
* 3、hashCode()方法:
* ^ hashCode()方法的返回值调用它的对象的十进制哈希码
* (不同的对象必有不同的hashCode返回值,但是如果两个引用的值相同则hashCode返回值相同,
* 因为引用不是对象,不是new出来的。)
* ^ 总结:两个对象或者引用的hashCode()是否相同,就是看这些对象或引用的地址是否相同,
* hashCode()方法只看地址。
* ^ Integer类的静态方法toHexString方法作用是将十进制整型数转化成十六进制数
*
* 4、toString()方法:
* ^ toString 方法功能是以字符串形式返回当前对象的有关信息。
* ^ 其返回值是调用它的对象的类名加十六进制哈希码。 |