大家好,欢迎来到IT知识分享网。
Object类
java.lang.Object 类是java语言中的根类,所有类的父类.
特点:
如果一个类没有指定父类,那么默认继承Object类(所有类的爹)
在API文档中,Object类里面共有11个方法:
常用的方法:
1. public String toString()
返回该对象的字符串,默认为:
类全名+@+内存地址值.(
类全名 = 包名 + 类名)
类全名+@+内存地址值.(
类全名 = 包名 + 类名)
重写toString()方法:表示需要打印该类的属性.
重写可以通过idea自动生成或自己重写.
class Student{
private String name ;
private int age;
//自动重写
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
重写后如何调用:
*直接调用(使用对象调用)
*间接调用(打印该对象)
Student stu = new Student();
//直接调用(使用对象调用)
System.out.println(stu.toString());
//间接调用(打印该对象)
System.out.println(stu);
2. public boolean equals(Object obj)
用来比较2个对象的方法.
默认比较2个对象的地址.如果不是同一对象,则为false
重写equals方法:比较2个对象的属性是否相等.(也可以通过idea自动生成,方式一样)
public class Person {
private String name;
private int age;
@Override
public boolean equals(Object o) {
//如果对象地址一样,认为相同
if (this == o)
return true;
//如果参数为空,或者类型不一样
if (o == null || getClass() != o.getClass())
return false;
//向下转型
Person person = (Person) o;
//要求基本类型相同,并且引用类型交给java.util.Objects类的equals静态方法
return age == person.age && Objects.equals(name, person.name);
}
}
3.Clss<?> getClass()
返回此Object的运行类(等于获取对象的类)
4.int hashCode()
返回对象的哈希码值
Objects类
jdk1.7后出现.提供静态方法操作对象.
常用方法:
1.public static boolean equals(Object a,Object b):比较对象a和对象b是否相等.
*比较2个对象是否相等,
底层依赖对象重写的equals的方法,如果没有重写,则使用Object的equals()
底层依赖对象重写的equals的方法,如果没有重写,则使用Object的equals()
2.public static <T> T requireNonNull(T obj):检查对象obj不为null,如果为null,则抛出空指针异常,否则返回obj本身.
*可以判断对象是否是空对象.限制参数不能为空.
3.public static boolean nonNull(Object obj):判断对象是否为null,不为返回true,否则返回false
4.public static boolean isNull(Object obj):和nonNull()相反.
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/23617.html