Java常用类之Object类
基本介绍
包地址:java.lang.Object
Class Object
是类Object
结构的根。 每个class都有Object
作为超类。 所有对象(包括数组)都继承这个类。
构造方法
public Object();
方法摘要
使用范围 | 修饰符 | 返回类型 | 方法 | 介绍 |
---|---|---|---|---|
对象操作 | protected | Object | clone() | 创建并返回此对象的副本 |
boolean | equals(Object obj) | 比较对象是否与传入对象相同 | ||
protected | void | finalize() | 当垃圾收集确定不再有对该对象的引用时,垃圾收集器在对象上调用该对象。 | |
Class <?> | getClass() | 返回此对象的运行时类 | ||
int | hashCode() | 返回对象的哈希码值 | ||
String | toString() | 返回对象的字符串表示形式 | ||
线程操作 | void | notify() | 唤醒正在等待对象监视器的单个线程 | |
void | notifyAll() | 唤醒正在等待对象监视器的所有线程 | ||
void | wait() | 导致当前线程等待,直到另一个线程调用该对象的 notify()方法或 notifyAll()方法。 | ||
void | wait(long timeout) | 导致当前线程等待,直到另一个线程调用 notify()方法或该对象的 notifyAll()方法,或者指定的时间已过。 | ||
void | wait(long timeout , int nanos) | 导致当前线程等待,直到另一个线程调用该对象的 notify()方法或 notifyAll()方法,或者某些其他线程中断当前线程,或一定量的实时时间。 |
Objects类
包地址:java.util.Objects
Objects类是对象的工具类,里面的方法都是用来操作对象的。
方法摘要
使用范围 | 修饰符 | 返回类型 | 方法 | 介绍 |
---|---|---|---|---|
对象操作 | static | int | compare(T a, T b) | 比较对象a和对象b,如果ab相等,返回0,如果不相等调用c的compare方法 |
boolean | equals(Object a , Object b) | 比较对象a和对象b,使用的是第一参数的equls方法,两参数有一个为null返回false,如果都是null,则返回true | ||
boolean | deepEquals(Object a, Object b) | 比较两个对象是否深度相等,使用Arrays.deepEquals0(a, b) | ||
int | hash(Object... values) | 得到一列对象的hash code,实际调用的是Arrays.hashCode(values) | ||
int | hashCode(Object o) | 得到一个对象的hash code,如果参数为null,返回0 | ||
boolean | isNull(Object obj) | 如果对象是null,返回true,否则返回false | ||
boolean | nonNull(Object obj) | 如果对象是null,返回false,否则返回true | ||
< T > T | requireNonNull(T obj) | 判断对象是不是null,如果不是null返回对象本身,如果是null则抛出空指针异常 | ||
< T > T | requireNonNull(T obj, String message) | 判断对象是不是null,如果不是null返回对象本身,如果是null则抛出空指针异常,并把第二个参数写在异常信息中 | ||
< T > T | requireNonNull(T obj, Supplier |
判断对象是不是null,如果不是null返回对象本身,如果是null则抛出自定义异常 | ||
Sting | toString(Object o) | 调用对象的toString方法,如果参数是null,返回字符串null | ||
Sting | toString(Object o, String nullDefault) | 调用对象的toString方法,如果参数是null,返回第二个参数 |