Java源码心中有数系列 java.lang.Object

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u010094934/article/details/69788379

public final native Class<?>   getClass()      返回次对象的运行时clss对象  该对象是被类的静态同步方法锁定的对象      返回此对象运行时类的class对象

public native int hashCode()    返回此对象的hash值  两个对象equals 方法相等 调用hashCode方法则产生相同结果    如果equals方法不相等 则两个对象hashcode不同

public boolean equals(Object obj)  某个对象是否等于此对象

具有  反身性  对于非空x  x.equals(x) 返回true

          对称性  对于非空 x和y   如果 x.equals(y)返回true  那么 y.equals(x)返回true 

          传递性  对于非空x y z  如果 x.equals(y) 返回true  y.equals(z)返回ture  那么 x.equals(z)也返回true

protected native Object clone() throws CloneNotSupportedException  执行对象的浅拷贝    需要实现Cloneable     返回一个全新的对象

public String toString()    返回对象的字符串表现形式 

public final native void notify()  唤醒正在等待对象监视器的任意一个线程    该方法只能被该对象监视器的所有者的线程调用 

线程有三种方式成为对象监视器的所有者    执行该对象的同步实例方法   执行同步对象的同步语句    class对象的synchronized静态方法

每次只有一个对象可以拥有该对象的监视器

public final native void notifyAll()  唤醒正在等待对象监视器的所有线程


调用该方法时 该线程必须拥有该对象的监视器

使得当前线程加入该对象的等待集合中 放弃对该对象的任何同步声明 

只针对于该对象

public final native void wait(long timeout) throws InterruptException   

public final void wait (long timeout, int nanos) throws InterruptException

public final void wait() throws InterruptedException 


protected void finalize() throws  Throwable  

当垃圾收集确定不再有对象的引用时,垃圾收集器会自救就该对象一次



展开阅读全文

没有更多推荐了,返回首页