Java面向对象_Object类

Object类 是类层次结构的根类,每个类都是用Object类作为超类,所有对象(包括数组)都实现这个类的方法。所有类都是Object类的子类。

下面先说两个方法toString()和equals(Object obj)

public class Practice14 {
    
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //用父类的引用指向子类对象
    Dog d=new Dog("小花","女");
    Dog d1=new Dog("小花","女");
    System.out.println(d.toString());
    System.out.println(d1);//.toString()可以省略,输出对象就输出了该对象的所有属性
    System.out.println(d1.equals(d));
    }
}

class Dog{
    private String name;
    private String sex;
    public Dog(String name,String sex){
        this.name=name;
        this.sex=sex;
    }
    //重写Object类的toString方法
    public String toString(){
        return "name="+name+"sex="+sex;
    }
    //重写Object类的equals方法来实现对象比较
    public boolean equals(Object obj){
        if(obj==null)return false;
        //Class c=this.getClass()
        if(this.getClass()!=obj.getClass())return false;
        Dog temp=(Dog)obj;
        if(!this.name.equals(temp.name))return false;
        if(!this.sex.equals(temp.sex))return false;    
        return true;
        
    }
}
原文地址:https://www.cnblogs.com/shenhainixin/p/5070293.html