Java»ù´¡ÖªÊ¶——JNIÈëÞµä
JNIÊÇJava Native InterfaceµÄËõд£¬Í¨¹ýʹÓÃnative·½·¨£¬Java¿ÉÒÔµ÷Óñ¾µØC/C++×Ó³ÌÐò¡£ÉùÃ÷Ò»¸ö±¾µØ×Ó³ÌÐòµÄ·½·¨ÊÇ£ºÔÚ·½·¨ÃûǰÌí¼ÓnativeÐÞÊΣ¬Èç
public native void myfun();
µ÷ÓøÃ×Ó³ÌÐòµÄ·½·¨Îª£º
static{
System.loadLibrary("myfun");
}
ÔÚWindowsÉÏ£¬ÉÏÃæµÄmyfun¼´Ö¸°üº¬ÓÃC/C++дµÄmyfun()µÄʵÌåµÄDLL——myfun.dll¡£ÏÂÃæÒÔNativeDemo³ÌÐòΪÀýÀ´ËµÃ÷ÔõÑùÔÚWindowsÏ£¨XP+VS2008+JDK1.6u17£©Ê¹ÓÃJNI¡£
1. ±àдԴ³ÌÐòNativeDemo.java
NativeDemo.javaÖÐÉùÃ÷ÁËÒ»¸ö±¾µØ×Ó³ÌÐòtest()£º
public native void test();
¸Ã×Ó³ÌÐò´ÓÖ÷³ÌÐò»ñµÃint±äÁ¿iµÄÖµ£¬¶ÔÆä¼Ó±¶£¬È»ºó·µ»Ø¸øÖ÷³ÌÐò¡£¾ßÌå´úÂëÈçÏ£º
// Using Native method
public class NativeDemo{
int i;
public static void main(String args[]){
NativeDemo ob=new NativeDemo();
ob.i=10;
System.out.println("This is ob.i before the native method: "+ob.i);
ob.test(); //call a native method
System.out.println("This is ob.i after the Native method: "+ob.i);
ob.test(); //call a native method
System.out.println("This is ob.i after the Native method: "+ob.i);
}
// declare native method
public native void test();
static{
// load DLL that contains static method
System.loadLibrary("NativeDemo");
}
}
2. ±àÒëNativeDemo.java
javac NativeDemo.java
µÃµ½NativeDemo.class
3. ʹÓÃjavah.exeÉú³ÉNativeDemo.h
javah -jni NativeDemo
javah.exeÔÚ%JAVA_HOME%\binÏ£¬Éú³ÉµÄNativeDemo.hÈçÏ£º
/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class NativeDemo */
#ifndef _I
Ïà¹ØÎĵµ£º
ÔÚJavaÖУ¬Ê¹ÓÃnew¹Ø¼ü×ÖºÍClass.forName("a.class.Name").newInstance¶¼¿ÉÒÔ´´½¨¶ÔÏó£¬ËüÃÇÓÖÓÐÊ²Ã´Çø±ðÄØ£¿
1¡¢ÀàµÄ¼ÓÔØ·½Ê½²»Í¬¡£
ÔÚÖ´ÐÐClass.forName("a.class.Name")ʱ£¬JVM»áÔÚclassapthÖÐÈ¥ÕÒ¶ÔÓ¦µÄÀಢ¼ÓÔØ£¬ÕâʱJVM»áÖ´ÐиÃÀàµÄ¾²Ì¬´úÂë¶Î¡£ÔÚʹÓà ......
JavaÓïÑÔµÄÊäÈëÊä³ö¹¦ÄÜÊÇÊ®·ÖÇ¿´ó¶øÁé»îµÄ£¬ÃÀÖв»×ãµÄÊÇ¿´ÉÏÈ¥ÊäÈëÊä³öµÄ´úÂë²¢²»ÊǺܼò½à£¬ÒòΪÄãÍùÍùÐèÒª°ü×°Ðí¶à²»Í¬µÄ¶ÔÏó¡£ÔÚJavaÀà¿âÖУ¬IO²¿·ÖµÄÄÚÈÝÊǺÜÅÓ´óµÄ£¬ÒòΪËüÉæ¼°µÄÁìÓòºÜ¹ã·º:±ê×¼ÊäÈëÊä³ö£¬ÎļþµÄ²Ù×÷£¬ÍøÂçÉϵÄÊý¾ÝÁ÷£¬×Ö·û´®Á÷£¬¶ÔÏóÁ÷£¬zipÎļþÁ÷....±¾ÎĵÄÄ¿µÄÊÇΪ´ó¼Ò×öÒ»¸ö¼òÒªµÄ½éÉÜ¡£
......
JSPµÄ9¸öÄÚÖöÔÏóÊÇ£ºout¡¢request¡¢response¡¢page¡¢pageContext¡¢session¡¢application¡¢exception¡¢config¡£Òª×¢Òâ¶ÔÏóÃûµÄ´óСд
What results from attempting to compile and run the following code? public class Ternary{ public static void main(String args[]){ int a = 5; System.out.printl ......
JavaÊý¾Ý¿âÁ¬½Ó£¨JDBC£©ÓÉÒ»×éÓà Java ±à³ÌÓïÑÔ±àдµÄÀàºÍ½Ó¿Ú×é³É¡£JDBC Ϊ¹¤¾ß/Êý¾Ý¿â¿ª·¢ÈËÔ±ÌṩÁËÒ»¸ö±ê×¼µÄ API£¬Ê¹ËûÃÇÄܹ»Óô¿Java API À´±àдÊý¾Ý¿âÓ¦ÓóÌÐò¡£È»¶ø¸÷¸ö¿ª·¢É̵Ľӿڲ¢²»ÍêÈ«Ïàͬ£¬ËùÒÔ¿ª·¢»·¾³µÄ±ä»¯»á´øÀ´Ò»¶¨µÄÅäÖñ仯¡£±¾ÎÄÖ÷Òª¼¯ºÏÁ˲»Í¬Êý¾Ý¿âµÄÁ¬½Ó·½Ê½¡£
¡¡¡¡Ò»¡¢Á¬½Ó¸÷ÖÖÊý¾Ý¿ ......
1¡¢ ´®²Ù×÷£ºÊ¹ÓÃ×Ö·û´®´æÖüÒ»¸öÓ¢Îľä×Ó“Java is an object oriented programming
language”¡£ÏÔʾ¸Ã¾ä×Ó£¬²¢Ëã³öÿ¸öµ¥´ÊµÄ×ÖĸÊýºÍƽ¾ù×ÖĸÊý£¬²¢°´µ¥´ÊÉýÐòÅÅÁÐÊä³ö£¨²»ÓÃÊý×飬ֻÓô®²Ù×÷£©
public class homework21 {
public static void main(String[] args) {
&nb ......