java中的 native 方法也叫本地方法,也就是用【native】关键词修饰的方法,多数情况下不需要用 Java 语言实现。
在介绍native方法之前,我们先介绍一下JNI,一般情况下我们都是使用Java语言来实现功能的,但是有些时候java满足不了我们的需求,或者不能很好的满足我们的需求,比如:
①. 标准的 Java 类库不支持。
②.我们已经用另一种语言,比如说 C/C++ 编写了一个类库,如何用 Java 代码调用呢?
③.某些运行次数特别多的方法,为了加快性能,需要用更接近硬件的语言(比如汇编)编写。
上面这三种需求,说到底就是如何用 Java 代码调用不同语言编写的代码。那么 JNI 应运而生了。
说白了这个东西,就是为了调用其它语言编写的程序而生。
编写步骤如下:
①、编写带有 native 方法的 Java 类,生成.java 文件;
②、使用 javac 命令编译所编写的 Java 类,生成.class 文件;
③、使用 javah -jni java 类名 生成扩展名为 h 的头文件,也即生成 .h 文件;
④、使用 C/C++(或者其他编程想语言)实现本地方法,创建 .h 文件的实现,也就是创建 .cpp 文件实现.h 文件中的方法;
⑤、将 C/C++ 编写的文件生成动态连接库,生成 dll 文件;