欢迎访问北大青鸟鲁广校区~

  1. 加入收藏
  2. 设为主页
  3. 学校简介
北大青鸟鲁广校区

17740513250

三分钟了解北大青鸟

×
  • 数据加载中...

怎么学好java之使用Native方法扩展Java程序的功能详解

责任编辑:宏鹏来源:武汉北大青鸟鲁广校区发布时间:2015-10-14 11:18:12
导读:怎么学好java是大家想了解的问题 。java语言北大青鸟武汉宏鹏鲁广校区ACCP课程中的基础语言,目前在软件开发中也是用得广的语言。那么,怎么学好java?我们就从使用Native方法扩展

怎么学好java是大家想了解的问题。java语言北大青鸟武汉宏鹏鲁广校区ACCP课程中的基础语言,目前在软件开发中也是用得较广的语言。那么,怎么学好java?我们就从使用Native方法扩展Java程序的功能详解中讲解吧!  

1、在Java中声明native()方法,然后编译;

2、用javah产生一个.h文件;

3、写一个.cpp文件实现native导出方法,其中需要包含第二步产生的.h文件(注意其中又包含了JDK带的jni.h文件);

4、将第三步的.cpp文件编译成动态链接库文件;

5、在Java中用System.loadLibrary()方法加载第四步产生的动态链接库文件,这个native()方法就可以在Java中被访问了。

JAVA本地方法适用的情况

1.为了使用底层的主机平台的某个特性,而这个特性不能通过JAVA API访问

2.为了访问一个老的系统或者使用一个已有的库,而这个系统或这个库不是用JAVA编写的

3.为了加快程序的性能,而将一段时间敏感的代码作为本地方法实现。

先写好JAVA文件

/*

* Created on 2005-12-19 Author shaoqi

*/

package com.hode.hodeframework.modelupdate;

public class CheckFile

{

public native void displayHelloWorld();

static

{

System.loadLibrary("test");

}

public static void main(String[] args) {

new CheckFile().displayHelloWorld();

}

}

然后根据写好的文件编译成CLASS文件,然后在classes或bin之类的class根目录下执行javah -jni com.hode.hodeframework.modelupdate.CheckFile,就会在根目录下得到一个com_hode_hodeframework_modelupdate_CheckFile.h的文件,然后根据头文件的内容编写com_hode_hodeframework_modelupdate_CheckFile.c文件.

#include "CheckFile.h"

#include

#include

JNIEXPORT void JNICALL Java_com_hode_hodeframework_modelupdate_CheckFile_displayHelloWorld(

JNIEnv *env, jobject obj)

{

printf("Hello world!\n");

return;

}

之后编译生成DLL文件如“test.dll”,名称与System.loadLibrary("test")中的名称一致 vc的编译方法:

cl -I%java_home%\include -I%java_home%\include\win32 -LD com_hode_hodeframework_modelupdate_CheckFile.c -Fetest.dll

后在运行时加参数-Djava.library.path=[dll存放的路径]

怎么学好java之使用Native方法扩展Java程序的功能详解让大家能够正确认识java,通过学习java实现高质量的软件开发。北大青鸟武汉宏鹏鲁广校区作为一家专业的IT职业教育学校,学好技术能帮大家成为高质量的IT人才!

本文标题:#怎么学好java之使用Native方法扩展Java程序的功能详解#,宏鹏发布于北大青鸟鲁广校区。怎么学好java是大家想了解的问题 。java语言北大青鸟武汉宏鹏鲁广校区ACCP课程中的基础语言,目前在软件开发中也是用得广的语言。那么,怎么学好java?我们就从使用Native方法扩展

专业老师指导

专业老师指导

赵老师

从事IT教育培训十年有余,致力于帮助广大学子找到适合自己的专业。

培训咨询客服

培训咨询客服

陈老师

IT培训专业客服,用自己的真诚解决了无数学子的困惑。

本文地址:https://www.027hpedu.com/wenda/java/715.html

大家都在看的大家都在看的Java开发

热门课程

更多>>
  • 数据加载中...
7天免费试学

7天课程免费试学

实战学习干货限时领取

行业解读+大咖授课+项目实操
10年以上业内强师集结,手把手带你蜕变精英!

点我咨询
×
在线咨询更多问题

如您有任何疑问
在线咨询随时为您解答或拨打咨询热线:13125006136

×
  • 姓 名*
  • 手 机*
  • QQ号/微信号
  • 所报学科 *
  • 其他备注
  • 验证码 获取验证码 *
  • 温馨提示:请保持手机畅通,咨询老师将为您提供专属的一对一报名服务。