|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
第一步:声明本地变量 例如:class NativeHello{ public native void nativeHelloWorld(); static{ System.loodlibrary("nativeTest");//调用nativeTest.dll库文件 } } 第二步:生成头文件 先用javac编译NativeHello.java,再用javah生成c的头文件.h文件 第三步:生成根文件 命令如下:javah -stubs NativeHello (生成NativeHello.c文件) 第四步:编写C程序(此处假定文件名为NativeTest.c) #include <stdio.h> #include <NativeHello.h>//指第二步生成的.h文件 #include <stubpreamble.h>//指JDK的include下的文件 void Nativehello_nativeHelloWorld(struct HNativeHello *this){ ......... }/*函数名Nativehello_nativeHelloWorld不能任意指定,可以从javah生成的头文件中查到,也可用 如下方式命名:类名_本地方式名(struct H类名 *this)*/ 第五步:编译DLL文件 将nativeTest.c和NativeHello.c编译成DLL库文件,文件名与System.loodlibrary("nativeTest")中的文件同名 最后讲一下测试的方式,源文件如下: class UseNative{ public static void main(String []args){ NativeHello nh=new NativeHello(); nh.nativeHelloWorld(); } } 返回类别: 教程 上一教程: JAVA常见问题集锦 下一教程: 利用JAVA编写HTML文件分析程序 您可以阅读与"JAVA与C语言接口"相关的教程: · 实现Java与C语言接口 · 澄清Java语言接口与继续的本质 · Java语言的接口与类型安全 · 漫谈Java语言的接口与类型安全 · 选择合适的java脚本语言 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |