JNI初步

使用C++嵌入到Java代码中有3个好处

1.C++代码效率高

2.C++代码反反编译

3.C++能与硬件交互。

 

1.Java代码编写

package cn.itcast;

public class TestNative {
	
	
	public native void sayHello();
	public static void main(String []args)
	{
		System.loadLibrary("nativecode");
		TestNative ts=new TestNative();
		ts.sayHello();
	}

}


 

2.使用javah生成头文件

javah TestNative

3.编写C++代码

#include "cn_itcast_TestNative.h"
#include <iostream>
using namespace std;
JNIEXPORT void JNICALL Java_cn_itcast_TestNative_sayHello(JNIEnv *env, jobject obj)
{
	cout<<"Hello World!"<<endl;
}


4.使用VS生成DLL

5.运行程序 输出 Hello World!

 

 

使用JNI有两个弊端

1.编出的程序不能跨平台

2.Java是强类型语言,C++不是。编写代码要小心。

所以在写Java程序的时候要尽量少使用本地代码。

 

 

 

 

你可能感兴趣的:(JNI初步)