Object是java中的顶级父类---也是java中唯一一个没有父类的类.
重要方法
clone()---克隆出一个和原有对象的属性值一样的新对象---如果一个类产生的对象想要被克隆,那么这个类必须一个接口Cloneable---这个接口仅仅标志这个类的对象可以被克隆
finalize()---这个方法通知GC回收垃圾---但是GC不一定运行---System.gc()
getClass()---获取对象的实际类型而不是声明类型
toString()---将对象转化为字符串,默认输出的是地址---当打印一个对象的时候实际上是默认调用了这个对象的toString方法,即:System.out.println(o.toString())和System.out.println(o) 一样。
equals(Object o)---比较两个对象是否相等---默认比较的两个对象的地址是否一致,但是实际开发过程中,往往会手动重写equals方法---地址、参数、类型、属性值;String类中的equals方法被重写了
hashCode---哈希码---根据哈希散列算法算出来的整数值
这套散列算法会保证得到的结果尽量平均的分布在int的取值范围内
由于算法的散列度问题,所以每一个对象的哈希码的重复概率是很小很小的
因此把哈希码认为是一个唯一的值---把作为每一个对象独有的特征来使用,每个对象的地址都有自己唯一的哈希码
哈希码是一个32位的二进制整数,同一个对象在存活期间在同一个项目中产生的哈希码要一致
网友评论