java说“万物皆对象”
euqals方法:
用来比较两个对象是否相等;
这个方法被写到所有类的基类objcet类中,在object中比较的是两个对象的内存地址是否相同。
但是我们可以在子类中复写该方法,来进行我们想要的比较形式,比如说比较成员变量值是否相同,
作为健壮性做法,我们可以使用instanceof来判断传入的对象是否为该类对象示例,来简化代码的判断流程
和判断的范围。
class C
{
private int num;
C(int num)
{
this.num = num;
}
public boolean equals(Object obj)
{
if(!(obj instanceof C))
return false;
else
return this.num==((C)obj).num;
}
}
toString():
Object中封装了toString()方法,这个方法在Object中返回的对象的相关信息,格式为“对象类型+@+哈希值”,可以通过复写这个方法来定义自己想要输出的类相关的信息。
通常我们在描述一个类的时候都要复写这个方法,使我们获取的类信息有意义。
getClass():
获取Class文件对象,通过这个方法可以获取对象类型。所有的类都有class文件。这个对象拥有getMethod():获取类文件中的所有方法;getName():获取类名