java笔记之Object类及常见方法
文章目录
一、Object方法的特点
Object类是所有类的父类,由于继承机制,这个类所拥有的方法会导致所有的类都拥有。
(object类在java.lang包,是默认引入的。)
二、==和equals的对比
==:可以判断基本数据类型,也可判断引用数据类型。
(1)判断基本数据类型比较值是否相等。
(2)判断引用则比较对象的地址是否相等。
如15==20
,及对象a1==对象a2
equals:只能判断引用类型。
(1)默认判断地址是否相等。
(2)而String,Integer重写了次方法,可以判断内容是否相等。
如"hello".equals("hello")
,
及Integer m=new Integer(6); m.equals(6);
(3)也可以自己重写该方法。
三、HashCode方法
1.hashCode:
HashCode是为了提高哈希表,哈希结构这种结构集合的性能。
如HashMap,HashSet提高这种集合的性能.
2.hashCode小结:
(1)两个对象的引用若指向同一对象,则哈希值一样。返回不同对象,哈希值不同。
(2)哈希值是通过对象的地址转化得来的,但不等同于地址。
四、toString方法
(1)默认返回:全类名+@+哈希值的16进制。
(2)重写toString方法,一般输出对象的属性。(也可自行写要写的内容)。
(3)直接输出一个对象时,会默认调用toString()方法。
五、Finalize方法
当垃圾回收器去回收一个对象时,就会调用该方法。
(对象没有任何引用时,就是垃圾对象,会被回收,回收前会先调用finalize方法)
注意:垃圾回收器回收一个对象,不是说有一个对象变成了一个垃圾马上就回收,它有自己的一个垃圾回收的算法。