Browse > Article

Java and C/C++ Mixed Programming  

Kim, Sang-Hoon (세명대학교 컴퓨터학부)
Publication Information
Abstract
The standard Java class library does not support the platform-dependent features needed by the application. Therefore, the Java application including the platform -dependent features must supplement the required features by invoking native functions using JNI. The native language programmer has to explicitly specify how to connect to various Java objects and later to disconnect from them. In this paper, I suggest a way to avoid these annoying works. The native method in the pure java class can not contain a native code block. By providing a native code block for the native method, it is possible for programmer to write a native code without being aware of JNI. To achieve this, I introduced the native class that is a java class on the native environment, and made it possible to interchange data by placing an arbitrator between the java class and the native class.
Keywords
Java; C/C++; Mixed programming; JNI;
Citations & Related Records
연도 인용수 순위
  • Reference
1 GlueGen, https//gluegen.dev.java.net
2 BCEL, http://jakarta.apache.org/bcel.
3 Ken Arnold, James Gosling and David Holmes, The Java Programming Language, 4th Edition, Addition Wesley, 2005.
4 Java Native Interface Specification. http://java.sun.com/javase/6/docs/technotes/guides/jni/spec/jniTOC.html.
5 Sheng Liang, The Java Native Interface: Programmer's Guide and Specification, Addition Wesley, 1999.
6 Tim Lindholm and Frank Yellin, The Java Virtual Machine Specification, 2nd Edition, Addison Wesley, 1999.
7 HawtJNI, http://fusesource.org/forge/projects/HA WTJNI.
8 JNA, http://jna.dev.java.net.
9 JavaCC, https://javacc.dev.java.net.
10 Evgeniy Gabrilovich and Lev Finkelstein, "JNI-C++ integration made easy," C/C++ Users Journal, Vol.19, No.1, pp. 10-21, 2001.
11 Viswanathan Kodaganallur, "Incorporating Language Processing into Java Applications: A JavaCC Tutorial," IEEE Software, Vol.21, No.4, pp. 70-77, 2004.