2

我想知道是否可以获得JDK方法的Native Code实现,例如:

public final class System {

/* First thing---register the natives */
private static native void registerNatives();
...
....}
4

3 回答 3

2

搜索 OpenJDK 源代码(它是开源的)或任何其他开源 Java 实现,您可以找到这些实现。

例如System 类源代码(获取完整的 OpenJDK 源代码可能比这个“网络视图”更方便)。

注意:registerNatives()正在使用本机(C/C++?)代码,因此您需要跟踪它(例如从完整的源代码)。或您感兴趣的任何其他实现。

于 2012-12-10T13:01:38.297 回答
1

以上部分代码不足以实现native方法,详细资料可以参考 http://www.javaworld.com/javatips/jw-javatip23.html

于 2012-12-10T13:04:25.750 回答
1

所有这些都可以从 OpenJDK Mercurial 存储库 Web 视图中获得,但要追踪它绝非易事。

这是java.lang.SystemJDK 7 更新流的最新开发版本中的本地代码的链接。希望你能从那里找到自己的路。

于 2012-12-10T13:16:02.333 回答