1、JNI的全称为:Java Native Interface,java本地接口,设计目的是与C/C++实现本地交互,在java办不到的或者使用方便的代码段调用。
2、JNI的编写步骤
a、编写带有native声明的方法的java类
b、使用javac命令编译a中实现的类
c、javah -jni java类名生成扩展名为h的头文件
d、使用C/C++实现本地方法
e、将d中的本地方法生成动态链接库
f、OK
1、编写java程序
class HelloWorld{
public native void displayHelloWorld();
static{
System.loadLibrary("hello");
}
public static void main(String[] args){
new HelloWorld().displayHelloWorld();
}
}
javac hello.java
然后javah命令
javah -jni HelloWorld
生成.h头文件为
/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class HelloWorld */
#ifndef _Included_HelloWorld
#define _Included_HelloWorld
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: HelloWorld
* Method: displayHelloWorld
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_HelloWorld_displayHelloWorld
(JNIEnv *, jobject);
#ifdef __cplusplus
}
#endif
#endif