上海福彩快3开奖结果 www.x1m79.cn IT职业教育

华中地区北大青鸟校区IT集训营

027-87807717

上海福彩快3开奖结果 > 热门IT技术教程 > Java技术教程 > > 怎么学好java之使用Native方法扩展Java程序的功能详解

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

时间:2012-05-25 10:45 来源:北大青鸟武汉宏鹏鲁广校区作者:027hpedu
导读:怎么学好java是大家想了解的问题 。java语言北大青鸟武汉宏鹏鲁广校区ACCP课程中的基础语言,目前在软件开发中也是用得广的语言。那么,怎么学好java?我们就从使用Native方法扩展

  怎么学好java是大家想了解的问题。java语言上海福彩快3开奖结果武汉宏鹏鲁广校区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人才!

相关文章

告诉我们,你现在想了解什么?

精彩专题——96%的同学看到这里都会点击下面的专题

Copyright (c) 2006-2020 武汉宏鹏教育咨询有限公司 版权所有 All Rights Reserved.

  • 端午出行走雅康高速 请先看看这份出行指南 2019-06-25
  • 湖北菜果茶监测合格率98% 2019-06-25
  • 为何一个不在城中心的儿童之家成为全省最美? 2019-06-01
  • 西藏:持续推进治沙造林工作 筑牢生态安全屏障 2019-06-01
  • 吴运波在石塘村调研脱贫攻坚和新农村建设工作 2019-05-26
  • 浙江吉利控股集团有限公司获第十二届人民企业社会责任奖年度扶贫奖 2019-05-17
  • 首例英烈保护公益诉讼案宣判:被告公开赔礼道歉 2019-05-17
  • 奋力谱写新时代追赶超越新篇章——访陕西省委书记胡和平 2019-05-07
  • 中东部高温降雨齐上阵 长江中下游多省份有暴雨 2019-04-29
  • 【理上网来辉煌十九大】墨西哥专家:未来中国有能力在国际事务上承担更重要的责任 2019-04-29
  • 人民日报评论员:新时代推进生态文明建设的重要遵循 2019-04-28
  • 回复@海之宁:你想自主劳动?全民所有的生产资料凭啥让你自主? 2019-04-28
  • 海南学习十九大精神--人民网海南频道--人民网 2019-04-14
  • 芦子沟里藏古宅文章中国国家地理网 2019-04-14
  • 走心走访大调研 深入基层零距离 2019-03-31
  • 1甘肃快3开奖结果 七乐彩胆拖怎么玩 排列五走势图连线南方 月亮是特马打一生动物 河南十一选五最新开奖结果 贵州十一选五前三直 足彩混合过关规 天津快乐10分开奖走势 新疆时时彩开奖22 快乐赛车人工全天计划 北京时时彩平台代理 德甲足球直播 浙江快乐彩技巧 最新福建22选5开奖结果查询结果 福建36选7体育彩票走势图