Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Java±¾µØ½Ó¿Ú(Java Native Interface (JNI))

JNI¹¤×÷Ô­Àí
ÔÚJNIÖУ¬±¾µØº¯ÊýÊÇͨ¹ýÒ»¸ö¶ÀÁ¢µÄ.c»ò.cppÎļþÀ´ÊµÏÖµÄ(C++ΪJNIÌṩµÄ½çÃæ»á¸ü¼ò½àһЩ)¡£µ±JVMµ÷Óøú¯Êýʱ£¬Ëü´«µÝÁËÒ»¸öJNIEnvÖ¸Õë¡¢Ò»¸öjobjectÖ¸ÕëºÍͨ¹ýJava·½·¨¶¨ÒåµÄJava²ÎÊý£¬JNIº¯ÊýµÄÐÎʽÈçÏ£º
JNIEXPORT void JNICALL Java_ClassName_MethodName
  (JNIEnv *env, jobjectobj)
{
    //Method native implemenation
}
envÖ¸ÕëÊÇÒ»¸ö°üº¬ÁËJVM½Ó¿ÚµÄ½á¹¹£¬Ëü°üº¬ÁËÓëJVM½øÐн»»¥ÒÔ¼°ÓëJava¶ÔÏóЭͬ¹¤×÷Ëù±ØÐèµÄº¯Êý£¬Ê¾ÀýÖеÄJNIº¯Êý¿ÉÒÔÔÚ±¾µØÊý×éºÍJavaÊý×éÀàÐÍÖ®¼ä¡¢±¾µØ×Ö·û´®ºÍJava×Ö·û´®ÀàÐÍÖ®¼ä½øÐÐת»»£¬Æä¹¦ÄÜ»¹°üÀ¨¶ÔÏóµÄʵÀý»¯¡¢Å׳öÒì³£µÈ¡£»ù±¾ÉÏÄú¿ÉÒÔʹÓÃJNIEnvÀ´ÊµÏÖËùÓÐJavaÄÜ×öµ½µÄÊÂÇ飬ËäȻҪ¼òµ¥ºÜ¶à¡£
¸ü¼ÓÕýʽµÄ½âÊÍÊÇÕâÑùµÄ£¬±¾µØ´úÂëͨ¹ýµ÷ÓÃJNIµÄº¯ÊýÀ´·ÃÎÊJVM£¬ÕâÊÇͨ¹ýÒ»¸ö½çÃæÖ¸ÕëʵÏֵ썽çÃæÖ¸Õëʵ¼ÊÉÏÊÇÖ¸ÏòÖ¸ÕëµÄÖ¸Õ룩£¬¸ÃÖ¸ÕëÖ¸ÏòÒ»¸öÖ¸ÕëÊý×飬Êý×éÖеÄÿ¸öÖ¸Õë¶¼Ö¸ÏòÁËÒ»¸ö½çÃæº¯Êý£¬¶øÃ¿¸ö½çÃæº¯Êý¶¼ÊÇÔÚÊý×éÖÐÔ¤Ïȶ¨Òå¹ýµÄ¡£
±¾µØ·½·¨½«JNI½çÃæÖ¸Õëµ±×÷Ò»¸ö²ÎÊý£¬Èç¹ûÔÚͬһ¸öJavaÏß³ÌÖУ¬³öÏֶԸñ¾µØ·½·¨µÄ¶àÖØµ÷Óã¬JVMÔò±£Ö¤´«µÝÏàͬµÄ½çÃæÖ¸Õëµ½±¾µØ·½·¨¡£²»¹ý£¬Ò»¸ö±¾µØ·½·¨¿ÉÒÔ±»²»Í¬µÄJavaÏ̵߳÷Óã¬Òò¶øÒ²¿ÉÄÜ»áÊÕµ½²»Í¬µÄJNI½çÃæÖ¸Õë¡£
 
±¾µØ·½·¨ÊÇͨ¹ýSystem.loadLibrary·½·¨¼ÓÔØµÄ£¬ÔÚÒÔϵÄÀý×ÓÖУ¬ÀàµÄ³õʼ»¯·½·¨¼ÓÔØÁËÒ»¸öÖ¸¶¨Æ½Ì¨µÄ±¾µØÀà¿â£¬¸ÃÀà¿â¶¨ÒåÁ˱¾µØ·½·¨£º
packagepkg;  
class Cls { 
     native double f(inti, String s); 
     static { 
         System.loadLibrary(pkg_Cls"); 
     } 
}
system.loadLibrary·½·¨µÄ²ÎÊýÊÇÒ»¸öÀà¿âµÄÃû³Æ£¬Ëü¿ÉÒÔÓɳÌÐòÔ±ÈÎÒâѡȡ£¬ÏµÍ³Ôò×ñÑ­Ò»¸ö±ê×¼µÄ±¾µØ»¯Æ½Ì¨µÄ·½Ê½À´×ª»»Àà¿âµÄÃû³Æµ½Ò»¸ö±¾µØÀà¿âµÄÃû³Æ¡£ÀýÈ磬ÔÚSolaris²Ù×÷ϵͳÖлὫpkg_Clsת»»Îªlibpkg_Cls.so£¬¶øWin32ϵͳÔò»á½«Í¬ÑùµÄpkg_Clsת»»Îªpkg_Cls.dll¡£
¡¡¡¡¶¯Ì¬Ö¸Õë»á¸ù¾ÝËüÃǵÄÃû×ÖÀ´½øÐнâÎö£¬Ò»¸ö±¾µØ·½·¨µÄÃû³ÆÊǰ´ÕÕ×é¼þ½øÐÐÁ¬½ÓµÄ£¬Ëü°üº¬ÁË£ºÇ°×º“Java_”¡¢Ò»¸ö·ÖÀëµÄºÏ·¨µÄÀàÃû³ÆºÍÒ»¸ö·ÖÀëµÄ·½·¨Ãû³Æ¡£
×¢Ò⣺΢ÈíµÄJVMÓÐÏàͬµÄ»úÖÆ´ÓJavaµ÷Óñ¾µØWindows´úÂ룬¸Ã»úÖÆ±»³ÆÎªÔ­Ê¼±¾µØ½Ó¿Ú(Raw Native


Ïà¹ØÎĵµ£º

JAVAºÍJSPÖ®¼äµÄ¹ØÏµ

ÎÒÏÖÔÚ¸øÄãÒ»¸öJAVAºÍJSPÖ®¼äµÄ¹ØÏµ,ÒÔ¼°JAVAµÄÍêÕûÈÏʶ
JAVA·ÖΪJ2EE,J2SE.J2ME,ÏÂÃæ·Ö±ð½éÉÜ:
Ò».J2EE£ºJava 2 Platform Enterprise Edition ÆóÒµ°æ£¬ÓÃÓÚÆóÒµÓ¦Óã¬Ö§³Ö·Ö²¼Ê½²¿Êð¡£ 
J2EEƽ̨ÓÉÒ»ÕûÌ×·þÎñ£¨Services£©¡¢Ó¦ÓóÌÐò½Ó¿Ú£¨APIs£©ºÍЭÒé¹¹³É£¬
Ëü¶Ô¿ª·¢»ùÓÚWebµÄ¶à²ãÓ¦ÓÃÌṩÁ˹¦ÄÜÉϵÄÖ§³Ö¡£Ëü°ü ......

JAVA·ÖΪJ2EE,J2SE.J2ME

JAVA·ÖΪJ2EE,J2SE.J2ME,ÏÂÃæ·Ö±ð½éÉÜ:
Ò».J2EE£ºJava 2 Platform Enterprise Edition ÆóÒµ°æ£¬ÓÃÓÚÆóÒµÓ¦Óã¬Ö§³Ö·Ö²¼Ê½²¿Êð¡£ 
J2EEƽ̨ÓÉÒ»ÕûÌ×·þÎñ£¨Services£©¡¢Ó¦ÓóÌÐò½Ó¿Ú£¨APIs£©ºÍЭÒé¹¹³É£¬
Ëü¶Ô¿ª·¢»ùÓÚWebµÄ¶à²ãÓ¦ÓÃÌṩÁ˹¦ÄÜÉϵÄÖ§³Ö¡£Ëü°üº¬13ÖÖºËÐļ¼Êõ¹æ·¶£º
£¨1£©Java Database Connectivity ......

javaС֪ʶ

(1)JavaÖеÄÖ÷·½·¨public static void main(String args[])ΪʲôҪÓÃstaticÀ´ÐÞÊÎ
ÒòΪjavaÊÇÍêÈ«ÃæÏò¶ÔÏóÓïÑÔ,Õâ¸öÖ÷º¯ÊýÆäʵÊÇÒ»¸öÀàµÄ·½·¨,Õâ¸ö·½·¨ÔÚÀàûÓÐÉú³É¶ÔÏóµÄʱºò¾Í±ØÐë±»JVMµ÷ÓÃ,ËùÒÔËü±ØÐëÊǾ²Ì¬µÄ³ÉÔ±º¯Êý.
 £¨2£©javaÓïÑÔÖеÄpublic static void main(String[] args) ×÷ÓÃÊÇʲô.Ëù×öµÄÊÂÇéÓÖÊÇʲ ......

²ËÄñ¶ÔjavaµÄһЩÀ§»ó

ѧjavaÒѾ­ÓÐÒ»¶Îʱ¼äÁË¡£Ñ§µÄ¶«Î÷²»¶à£¬µ«ÎÒûÏëµ½½ö½öÃæÏò¹ý³ÌµÄһЩ֪ʶ£¨Loops£©¾Í¿ÉÒÔ×ö³öÏñÎå×ÓÆåÕâÑùµÄÓÎÏ·£¬ÎÒ²»µÃ²»¸Ð̾javaÓïÑÔµÄ÷ÈÁ¦¡£ÌرðÊÇÁ˽⵽javaµÄÓ¦ÓÃÖ®¹â·º£¬Éæ¼°ÊÖ»ú£¬Ç¶Èëʽ¿ª·¢£¬pc£¬ÆóÒµ¼°·þÎñÆ÷µÈÖ®ºó£¬ÎÒ¸ü¼á¶¨ÁËѧϰjavaµÄ¾öÐÄ¡£µ«ÊÇÎÒÒ²µ£ÐÄ×Ô¼ºÑ§²»°¡ºÃ¡£ºÜ¶à¶«Î÷¶¼ÊÇÔÚÀÏʦµÄÀÏÁìµ¼ÏÂÍê³ÉµÄ£ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ