Object类


public int hashCode()方法 获取对象的哈希码值

* a:返回该对象的哈希码值。不是地址值,默认情况下,该方法会根据对象的地址来计算。

* b:不同对象的,hashCode()一般来说不会相同。但是,同一个对象的hashCode()值肯定相同。

hashcode 有啥用:这个哈希码值和我们后期讲解的数据结构中哈希表结构这种数据结构有关系


public final Class getClass()方法 获取一个类对应的字节码文件对象

* a:返回此 Object 的运行时类。

* b:可以通过Class类中的一个方法,获取对象的真实类的全名称。


public String toString()方法 返回对象的字符串表现形式

它的值等于: getClass().getName() + "@" + Integer.toHexString(hashCode())

由于默认情况下的数据对我们来说没有意义,一般建议重写该方法。更方便的显示属性值


public boolean equals(Object obj)方法 比较两个对象是否相等

重写需要向下转型,因为无法访问子类的特有属性和方法

public boolean equals(Object obj){

Student s = (Student) obj;

return this.name.equals(s.name) && this.age == s.age;

}


* a:指示其他某个对象是否与此对象“相等”。

* b:默认情况下比较的是对象的引用是否相同。

* c:由于比较对象的引用没有意义,一般建议重写该方法

原文地址:https://www.cnblogs.com/loaderman/p/6407184.html