一 概述
二 构造方法类
Object
是类层次结构的根类。每个类都使用object
作为超类。所有对象(包括数组)都实现这个类的方法。
Object();
三 方法
(1)
本地方法,static表示该类再初始化时执行该代码块,完成本地注册。private static native void registerNatives(); static { registerNatives(); }
(2)
public final native Class<?> getClass();
本地方法,返回此
Object
的运行时类。
(3)
public native int hashCode();
本地方法,针对不同的对象返回不同的整数,一般是通过将该对象的内部地址转换成一个整数来实现的。
(4)
自反性,传递性,对称性,一致性, 非空引用值public boolean equals(Object obj) { return (this == obj); }
x
,x.equals(null)
应返回false
。、(5)
protected native Object clone() throws CloneNotSupportedException;
本地方法,Object 类本身不实现接口 Cloneable,所以在类为 Object 的对象上调用 clone 方法将会导致在运行时抛出异常。
(6)
(7)public String toString() { return getClass().getName() + "@" + Integer.toHexString(hashCode()); }
public final native void notify();
本地方法,唤醒在此对象监视器上等待的单个线程。如果所有线程都在此对象上等待,则会选择唤醒其中一个线程。选择是任意性的,并在对实现做出决定时发生。
(8)
public final native void notifyAll();
本地方法,唤醒在此对象监视器上等待的所有线程。线程通过调用其中一个
wait
方法,在对象的监视器上等待。(9)
public final native void wait(long timeout) throws InterruptedException;
在其他线程调用此对象的
notify()
方法或notifyAll()
方法,或者超过指定的时间量前,导致当前线程等待。
另有其他两个重载形式。
(10)
protected void finalize() throws Throwable { }
当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。子类重写
finalize
方法,以配置系统资源或执行其他清除。