日期:2014-05-20  浏览次数:20726 次

关于系统的类提供的native方法的问题
我们在写自己的native方法时,一般使用System.loadLibrary()方法将有关的DLL库加载到JVM。但是我在查看JAVA提供的类的源代码时,对于那些JAVA提供的native方法并未看到有System.loadLibrary()方法加载相关的库,我不知道是怎么回事?
难道这些JAVA的native方法都直接由JVM控制?
难道我想替换掉一些JAVA的native方法的本地实现就没有办法了吗?
希望大家能指点一下,谢谢!

------解决方案--------------------
太高深了吧
------解决方案--------------------
一直都没有用过~~~~以后有机会用的时候再研究
------解决方案--------------------
说句实话,我不喜欢native,那和java本身项违背。
我也不怎么懂jni。
------解决方案--------------------
为什么要改java的标准类库,既然改不了环境,就改变自己呀!
想用本地实现什么方法就实现了打成动态连接库,然后用java
强大的jni调用就可以了。
------解决方案--------------------
只要有一个地方用System.loadLibrary()加载过动态链接库,在程序中就可以使用了。

可能jvm在某个地方已经集中加载过了。或是LZ没有发现,或是sun没有公开,或是由jvm启动动已经加好了。。。