今天是学习自学java的第22天,基本都是晚上在网上学习视频课程,随即跟着一起敲案例代码。
今天学习的是Object类,Object类可以简单理解为所有类的父类(根类),所有的类都是直接或者间接的去继承Object类。
Object类在API中能查到,是属于java.lang包下的,里面的所有方法都比较重要,今日只学习了4种方法。
1、equals(Object obj)方法,用于判断两个对象是否相等,可以被重写。
2、finalize()方法,用于垃圾回收。
3、hashCode()方法,用于调用对象的哈希值,调用出来是一个十进制的数。一般不被重写,但是如果equals被重写的话,可以将hashCode方法重写,当然也可以不重写。
4、toString()方法,调用对象的字符串,调用显示为"对象名@十六进制的哈希码“(这个哈希码就是哈希值hashCode值转换后的)。可以被重写
最后学习了final和finalize的比较:
(1)、final可以修饰属性,属性值不能再修改,如果修饰方法不能被重写,如果修饰类不能被继承
(2)、finalize:用于垃圾回收,如果对象在堆中没有任何引用时jvm会调用finalize来回收这个对象。