java object - yaokun123/php-wiki GitHub Wiki
JAVA面向对象-Object
Object是所有类的根类。
Object是不断抽取而来的,具备着所有对象都具备的共性内容。
一、equals
展示其他某个对象是否与此对象“相等”
class Person{
private int age;
Person(int age){
this.age = age;
}
}
class ObjectDemo{
public static void main(String[] args){
Person p1 = new Person (20);
Person p2 = new Person (20);
Person p3 = p1;
System.out.println(p1==p2);//false 对象比较的是地址
System.out.println(p1.equals(p2));//false
System.out.println(p1.equals(p3));//true
}
}
equals方法覆盖
class Person{
private int age;
Person(int age){
this.age = age;
}
public boolean equals(Object obj){//覆盖父类的equals方法
Person p = (Person)obj;
return this.age == p.age;
}
}
class ObjectDemo{
public static void main(String[] args){
Person p1 = new Person (20);
Person p2 = new Person (20);
//年龄比价
System.out.println(p1.equals(p2));//true
}
}
二、hashCode
返回该对象的哈希码值
class ObjectDemo{
public static void main(String[] args){
Person p1 = new Person (20);
System.out.println(p1);
System.out.println(p1.hashCode());//十进制
System.out.println(Integer.toHexString(p1.hashCode()));//十六进制
}
}
三、getClass
返回此Object的运行时类
class ObjectDemo{
public static void main(String[] args){
Person p1 = new Person (20);
Person p2 = new Person (20);
class1 = p1.getClass();
class2 = p2.getClass();
System.out.println(class1 == class2 );//true
System.out.println(class1.getName());//Person
}
}
四、toString
返回该对象的字符串表示