调用内置的java本机方法

tol*_*uju 1 java java-native-interface jvm native

是否可以调用JVM的内置本机代码,即java.lang和java.io中各种类调用的代码?换句话说,您是否可以绕过内置的Java API来访问各种系统级调用,例如文件系统访问?我知道我可以通过构建我自己的本机代码库并通过JNI调用它来实现这一点,但是对于已经内置到JVM中的功能而言,不需要额外的本机库也是优雅的.

Jas*_*hen 6

不,你不能.它是故意设计的; 如果可以的话,你会覆盖API合约.

无论如何,标准库包装器代码非常轻微,使用JIT编译器时,您不应注意任何速度影响.

此外,这些方法的实现不是API规范的一部分.什么是Java的一个实现的"本机"不一定是另一个.