Object类:
Object类是所有类的顶级父类
在此类中提供了很多常用的方法;
(toString)方法;
在Object类中,返回的是Hashcode值;也即是返回的是对象地址信息;
但是我们需要返回的是对象内的信息,所以我们需要重写toString方法,来获取对象内的信息
重写方法:
public String toString(){
return "[name="+name+",age="+age+...+"]"//这里写上你想要返回的信息
}
euqals方法:
equals方法在Object类中是比较的是两个对象的地址信息是否相同,也即是比较两个对象是不是同一个对象,然而我们在使用时常常比较的是两个相同类型的对象内的信息是否相同,所以我们需要重写equals方法
public boolean euqals(Object obj){
if(obj==null){//判断传入的对象是否为空,为空返回false;
return false;
}
if(obj==this){//判断传入的对象是不是与要比较的对象是不是同一个对象,如果是,返回true;
return true;
}
if(!(obj instanceof 类名)){//判断传入的对象是否是本类型的对象
return false;
}
这三步骤的判断大致为:(1)先判断这个obj是否为空,如果为null,直接输出为false;(2)如果不为null,判断obj与this比较,判断传入者是不是本身,如果是,返回true,如果不是的话,这个传入者也可能是本类型的其他对象,所以需要继续判断;(3)判断这个obj是不是本类型对象,如果不是,返回false;如果是,就对其对象内的信息进行比较
如果是基本数据类型,用==进行比较,如果是引用数据类型,用equals进行比较