易截截图软件、单文件、免安装、纯绿色、仅160KB

java使用JNI调用C++函数

网上有了很多这样的文章,不过感觉并不是很全,我都东找西找才最终把JAVA调用c++给搞定。
下面引用了很多网上已经有的的内容,我在这里只是整合一次,让以后的朋友少走网路。
多说无益,具体如下:
作者:mykoma
假设所有文件都放在d:\
Step 1:
写JAVA文件
例如程序testdll.java,内容为:   
  public   class   testdll  {   
  static{   
  System.loadLibrary("testdll");   
  }   
  public   native   static   int   get();   
  public   native   static   void   set(int   i);   
  public   static   void   main(String[]   args)    {  
     testdll   test   =   new   testdll();   
     test.set(10);   
     System.out.println(test.get());   
   }      
  }  
用javac   testdll.java编译它,会生成testdll.class。
再用javah   testdll,则会在当前目录下生成testdll.h文件,这个文件需要被C/C++程序调用来生成所需的库文件。
Step 2:
根据testdll.h写C++文件testdll.cpp
testdll.cpp内容为:
#include   "testdll.h"   
  int   i   =   0;   
  JNIEXPORT   jint   JNICALL   Java_testdll_get   (JNIEnv   *,   jclass)     {   
      return   2*i;   
  }   
  JNIEXPORT   void   JNICALL   Java_testdll_set   (JNIEnv   *,   jclass,   jint   j)   {   
  i   =   j;   
  }  
Step 3:
生成testdll.dll
这一步需要注意,我最开始也是找了很多资料才弄正确
这里我使用的V


相关文档:

如何自学java成为java高手

很多网友咨询学习Java有没有什么捷径,我说“无他,唯手熟尔”。但是尚学堂愿意将一些经验写出来,以便后来者少走弯路,帮助别人是最大的快乐嘛!
要想学好Java,首先要知道Java的大致分类。我们知道,自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE, ......

JAVA开发者最常去的20个英文网站

1.[http://www.javaalmanac.com] – Java开发者年鉴一书的在线版本. 要想快速查到某种Java技巧的用法及示例代码, 这是一个不错的去处.
2.[http://www.onjava.com] – O’Reilly的Java网站. 每周都有新文章.
3.[http://java.sun.com] – 官方的Java开发者网站 – 每周都有新文章发表.
4.[http:/ ......

Java编码规范(一)

命名规范
项目名:各单词首字母大写,其它字母小写
包名:全部字母小写且唯一,通常为公司域名的倒序
源文件名:各单词首字母大写,其它字母小写
方法名:第一个单词全部小写,其余单词首字母大写,其它字母小写,一般应为动词
成员变量名:第一个单词全部小写,其余单词首字母大写,其它字母小写
成员常量名:所有单 ......

java 序列化


什么是序列化 
java中的序列化(serialization)机制能够将一个实例对象的状态信息写入到一个字节流中,使其可以通过socket进行传输、或者持久化存储到数据库或文件系统中;然后在需要的时候,可以根据字节流中的信息来重构一个相同的对象。序列化机制在java中有着广泛的应用,EJB、RMI等技术都是以此为基础的。  ......

java数据类型

java:4类8种基础数据类型:
整型:byte  short  int  long
浮点型: float  double
布尔型:boolean
字符型:char
除了4类8种基础数据类型,其他的数据类型都是引用类型例如定义的class 等等,这一点异常重要。否则会导致在使用container时出错,每添加一个对象进入container都必须是一个对象而不 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号