Java方法和本机方法有什么区别

是的,本机方法是使用与Java不同的语言编写的方法。以下是使用本机方法的步骤。

  • 1.为C程序创建头文件(.h文件)。

  • 2.创建C文件

  • 3.创建一个DLL

  • 4.在Java代码中,将方法声明为native,使用System.loadLibrary()方法加载DLL并调用该方法。

示例

Tester.java-

public class Tester {

   public native int getValue(int i);

   public static void main(String[] args) {

      System.loadLibrary("Tester");

      System.out.println(new Tester().getValue(2));

   }

}

Tester.c-

#include <jni.h>

#include "Tester.h"

JNIEXPORT jint JNICALL Java_Tester_getValue(

   JNIEnv *env, jobject obj, jint i) {

      return i * i;

   }

编译并运行-

javac Tester.java

javah -jni Tester

gcc -shared -fpic -o libTester.so -I${JAVA_HOME}/include \

  -I${JAVA_HOME}/include/linux Tester.c

java -Djava.library.path=. Tester

输出结果 

4

以上是 Java方法和本机方法有什么区别 的全部内容, 来源链接: utcz.com/z/322269.html

回到顶部