jdk源码阅读-Object类

Posted panchangde

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jdk源码阅读-Object类相关的知识,希望对你有一定的参考价值。

native 关键字

private static native void registerNatives();
    static {
        registerNatives();
    }

public final native Class<?> getClass();

public native int hashCode();

protected native Object clone() throws CloneNotSupportedException;


public final native void notify();


public final native void notifyAll();


public final native void wait(long timeout) throws InterruptedException;

native是与C++联合开发的时候用的!java自己开发不用的!

使用native关键字说明这个方法是原生函数,也就是这个方法是用C/C++语言实现的,并且被编译成了DLL,由java去调用。
这些函数的实现体在DLL中,JDK的源代码中并不包含,你应该是看不到的。对于不同的平台它们也是不同的。这也是java的底层机制,实际上java就是在不同的平台上调用不同的native方法实现对操作系统的访问的。



1。native 是用做java 和其他语言(如c++)进行协作时用的
也就是native 后的函数的实现不是用java写的
2。既然都不是java,那就别管它的源代码了,呵呵



native的意思就是通知操作系统,
这个函数你必须给我实现,因为我要使用。
所以native关键字的函数都是操作系统实现的,
java只能调用。

以上是关于jdk源码阅读-Object类的主要内容,如果未能解决你的问题,请参考以下文章

JDK源码阅读开始--Object类

JDK源码阅读:Object源码分析

1.2JDK源码阅读之Object

JDK源码阅读:Object源码分析

JDK源码阅读之java.lang.Object(第二章)

jdk源码阅读之-1.1.Object·1