Object类
Object类是所有类的父类,创建一个类,会自动继承Object类
Object中的to String()方法
重写前:输出包/类/对象的@地址值
public class Test {
public static void main(String[] args) {
People people = new People("lv",13); //有参构造
System.out.println(people);
}
}
输出结果 :Day1015.Dmeo@1a784 //people对象的地址值
重写后:对象的属性
//覆盖重写 IDEA中可直接在类中Alt+insert选中to String()即可
@Override
public String toString() {
return "People{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
输出结果:People{name='lv', age=13} //people对象的属性
Object中的equals()方法
重写前:比较两个对象地址值是否相同而返回true/false
public class Test {
public static void main(String[] args) {
People people= new People("lv",13);
People people1= new People("lv",13);
System.out.println(people.equals(people1));
}
}
打印结果:false
重写后:比较两个对象属性是否相同而返回true/false
//覆盖重写 IDEA中可直接在类中Alt+insert选中equal()即可
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
People people = (People) o;
return age == people.age &&
Objects.equals(name, people.name);
}
打印结果:true
Objects类
equals()方法
特点:可以容忍空指针 /null
public class Test {
public static void main(String[] args) {
String a = null;
String b = "abc";
boolean result = Objects.equals(a,b); //调用Objects中的equals方法
System.out.println(result);
}
}
输出结果:false