Objcet:所有类的根类。
Objcet是不断抽取而来的,具备着所有对象都具备的共性内容。
常用的共性功能:
equals()、hashCode()、toString()方法的覆写示例
class Person
{
private int age;
Person(int age)
{
this.age=age;
}
/*
比较Person的年龄,是否是同龄人
将父类中的equals方法覆写
一般都会覆盖此方法,根据对象的特有内容,建立判断对象是否相同的依据
*/
public boolean equals(Object obj)
{
if(!(obj instanceof Person))
{
throw new ClassCastException("类型错误");//类型转换异常
}
else
{
Person p=(Person)obj;
return this.age==p.age;
}
}
public int hashCode()
{
return age;
}
public String toString()
{
return "Person:"+age;
}
}
class Demo
{
}
class ObjectDemo
{
public static void main(String[] args)
{
Person p1=new Person(20);
Person p2=new Person(20);
Demo d=new Demo();
//System.out.println(p1==p2);
//System.out.println(p1.equals(p2));//equals()比较的是地址
//System.out.println(p1.equals(d));
//System.out.println(p1.hashCode());
//Class class1=p1.getClass();
//Class class2=p2.getClass();
//System.out.println(class1.equals(class2));//true,使用同一个class类创建了对象
//System.out.println(class1.getName());
System.out.println(p1);
System.out.println(p1.getClass().getName()+"$"+Integer.toHexString(p1.hashCode()));
}
}