龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

在JAVA中实现C++代码的复用

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
现在的开发工具比较多,如Java,C++,。NET等,如何在这些不同的开发工具中实现代码的复用,成为一个比较重要的话题,也是提高生产率,降低项目成本的一个重要手段。其中C++与.N

     现在的开发工具比较多,如Java,C++,。NET等,如何在这些不同的开发工具中实现代码的复用,成为一个比较重要的话题,也是提高生产率,降低项目成本的一个重要手段。其中C++与.Net之间比较好融合,这是因为都是基于ms的开发平台与解决方案,如com,dll,activex等,但java与c++之间就比较麻烦些。下面介绍通过jni来复用c++代码的方法。
  
  1。在java中声明native方法
  
  public class Message {
  static{
  System.load("C:libMessage.dll");
  }
  public native static boolean send(String mobile,String text);
  }
  
  其中,dll名称为等会用c++生成的dll,send方法为c++中需要复用的代码,java中只需给出声明即可,代码的实现在c++中.
  
  2. 编译头文件
  

  用javah命令生成c++中需要的头文件,如.
  javah Message
  注重这里已经是Message.class了,这时会生成一个message.h文件。
  
  3。在c++中实现。
  

  打开vc6.0工程,使用wizard生成一个dll,include刚才用javah生成的头文件,实现要复用的代码即可,一般就是把自己封装好的类在这里做一个调用即可。
  
  其他:
  java里的定义如boolean,string等都在jni.h中有相应的转换,如jboolean等,直接使用即可。
  希望跟大家进一步讨论。


  
精彩图集

赞助商链接