java.lang.Object源码浅析

来源:互联网 发布:java手动线程池使用 编辑:程序博客网 时间:2024/05/01 10:35
  • 根据个人学习进度总结,难免会有部分内容分析不全或者不到位,仅供参考

java.lang.Object类想必不用过多介绍,这里主要探究其主要的一些方法。

private static native void registerNatives();    static {        registerNatives();    }    //这里通过静态块应该做了一些类似初始化的工作,源码中也没有相关的详细说明,所以也不得而知(望有知道的博友提供参考意见)----------
public native int hashCode();//native修饰,返回该属于该对象的int类型的hash值,具体实现还未探究。。----------
 public boolean equals(Object obj) {        return (this == obj);    }    //Object自身的equals方法,显然,这里直接是利用==来进行比较了,不言而喻,所以许多类往往会重写该方法来进行比较。    //面试的时候也常常会有相关的提问:不应该笼统地解释为equals比较的是内容,==比较的是对象引用,更具体地应该是对于Object类来说,其equals方法比较的是对象的地址,对于其他类来说,并且覆写了equals方法,一般比较的就是内容。
public String toString() {        return getClass().getName() + "@" + Integer.toHexString(hashCode());    }    //toString,非常常用的方法,Object类返回的是 “类名@十六进制表示的hash值“ ,也是对本类的一种标志性质,子类往往也会覆写该方法,不再过多说明。

还有一些关于线程类notify(),wait()的方法,以后再进一步说明


0 0