Java¸ß¼¶Ó¦Óÿª·¢¾Ñé·ÖÏí
JavaµÄÓŵãÓУº ¿çƽ̨ÐÔºÜÇ¿µÄ£¬Ò»´Î±àÒëµ½´¦ÔËÐУ¬Ò»±ß±àÒëÒ»±ßÖ´ÐУ¬ ²»Êܲ¡¶¾µÄ¸ÉÈÅ¡£µ«ÊÇÃÀÖв»×㣬ÔËÐÐËٶȱÈC£¬C++ µÈÓïÑÔÂý£¬ ·ÃÎÊÓ²¼þµ×²ã±È²»ÉÏC++£¬C£¬Ò»Ð©Ó¦ÓÃÐèÇóÈ´ÐèÒªÖ´Ðд¿ Java ³ÌÐòÎÞ·¨Íê³ÉµÄһЩÈÎÎñ¡£Îª´ËSUN¹«Ë¾ÎªÁËÍ»ÆÆJAVAµÄÆ¿¾±£¬ ¾ÍÒýÈëÁËJNI µÄ×÷Ó㬠JNI¾ÍÊÇÄܹ»¼æÈÝC£¬Ñﳤ±Ü¶Ì£¬ ¿ìËٵķÃÎÊÓ²¼þµ×²ã£¬ À©Õ¹ÎÒÃÇÈí¼þµÄ¹¦ÄÜ£¬ ËæÐÄËùÓûµÄ½øÐпª·¢¡£¶ÔÓÚÒÆ¶¯¿ª·¢¶øÑÔ£¬ BREAW£¬ SYMBIAN,µÈ¾ÍÊÇÒÔCºÍC++Ϊ»ù´¡µÄ£¬ ¶øÏÖÔÚÊг¡µÄÐÂÐËÖÇÄÜÆ½Ì¨ANRDOID ºÍÖйúÒÆ¶¯µÄOphoneÒ²ÊÇÒÔJAVA ¿ª·¢ÎªÖ÷£¬ Ò²Óõ½ÁËJNI¡£¶øÎªÊ²Ã´±ÊÕßÔÚ±¾ÎÄÁ¦Ò²ÍÆJNI ÄØ£¿ ÔÒòÈçÏ £º
J2ME×÷ΪÊÖ»úÓ¦Óÿª·¢µÄÏÈÇý£¬ÓÉÓÚËüµÄ³ö·¢µã¿¼ÂDZȽϵͣ¬¿ª·¢³öÀ´µÄÊÖ»úÓ¦ÓÃÈí¼þ´¦´¦Êܵ½ÏÞÖÆ£¬ÌرðÊÇÔÚµ×²ã·½Ãæ±ÈÈçÊÖ»ú±ÚÖ½£¬ÉùÒô¾ùºâÆ÷£¬ÉùÒôµÄ²¶×½µÈÊDz»ÄÜͨ¹ýÈí¼þÀ´ÉèÖᣲ»ÄÜÈÃÎÒÃÇËæÐÄËùÓûµÄ¿ª·¢¡¢²ß»®ÎÒÃǵÄÈí¼þ¡£¶øÎÒÃÇ´ÓAndroid Library»òOphone LibraryµÄ×é³ÉÀ´¿´£¬ ËûÊÇÓÉһϵÁеÄc/c++¿â×é³É£¬ÕâЩ¿âµÄÄÜÁ¦Í¨¹ýJNI·â×°³Éjava½Ó¿Ú£¬ÓÉApplication Framework²ãÌṩ¸ø¿ª·¢Õß¡£ÕâÑùJNIΪµÄÃÇ·ÃÎÊÊÖ»úµÄÓ²¼þµ×²ãÌṩ½Ó¿ÚºÍ·½±ã¡£ÕâЩµ×²ãÓУºÉùÒô¾ùºâÆ÷£¬ÊÓÆµ£¬µØÍ¼£¬3D£¬ Çý¶¯±àд£¬ÍøÂçµ×²ãµÈ£¬ÕâÑù¾Í¿ÉÒÔÓÃJAVA ×öUI½çÃæ£¬JNIÀ´µ÷ÓÃϵͳµÄµ×²ã£¬ ÕâÑùÁ½½áºÏÆðÀ´¾ÍÊǼÈÌá¸ß¿ª·¢µÄËÙ¶È£¬ÓÖÌá¸ßÁËÈí¼þµÄÔËÐÐËÙ¶È¡£²»¾Ã½«À´Android »òOphoneֻҪʵÏÖÁËJ2me API£¨´óÊÆËùÇ÷£©£¬ÕâÑù´óÁ¿ÏÖÓеÄJ2MEµÄÓ¦ÓÿÉÒÔºÜÈÝÒ×µÄÒÆÖ²µ½Android »òOphoneÉÏÀ´£¬¶øÇÒͨ¹ýJNI¿ÉÒÔºÜÈÝÒ×µÄÔö¼Óµ÷ÓõײãµÄ¸ß¼¶¹¦ÄÜ¡£Êг¡Ç°¾°ºÜ¿íÀ«¡£ÏÂÃæÎҾͽéÉÜһϣº
java µ÷ÓÃJNIʾÀý:
class HelloWorld {
¡¡¡¡public native void displayHelloWorld();//ÉùÃ÷µ÷ÓÃCµÄ·½·¨
¡¡¡¡
¡¡¡¡static {
¡¡¡¡System.loadLibrary("hello");//µ¼ÈëCµÄÎļþ£¬²¢ÔËÐÐCµÄMAIN£¨£© ·½·¨.
¡¡¡¡}
¡¡¡¡
¡¡¡¡public static void main(String[] args) {// ÔËÐÐÖ÷³ÌÐò
¡¡¡¡new HelloWorld().displayHelloWorld();//Éú³É
¡¡¡¡}
¡¡¡¡}
ÉùÃ÷native·½·¨£ºÈç¹ûÄãÏ뽫һ¸ö·½·¨×öΪһ¸ö±¾µØ·½·¨µÄ»°£¬ÄÇôÄã¾Í±ØÐëÉùÃ÷¸Ä·½·¨ÎªnativeµÄ£¬²¢ÇÒ²»ÄÜʵÏÖ¡£ÆäÖз½·¨µÄ²ÎÊýºÍ·µ»ØÖµÔÚºóÃæ½²Êö¡£
¡¡¡¡
¡¡¡¡Load¶¯Ì¬¿â£ºSystem.loadLibrary("hello");¼ÓÔØ¶¯Ì¬¿â.
C µÄ´úÂë:
¡¡¡¡#include
¡¡¡¡/* Header for class HelloWorld */
¡¡¡¡
¡¡¡¡#ifndef _Included_HelloWorld //ÉùÃ÷CÎļþ( ±êʶΪC£¬ÓïÑÔ´úÂ룩
¡¡¡¡#
Ïà¹ØÎĵµ£º
1¡¢ ¶ÔÏóµÄ³õʼ»¯
(1) ·Ç¾²Ì¬¶ÔÏóµÄ³õʼ»¯
ÔÚ´´½¨¶ÔÏóʱ£¬¶ÔÏóËùÔÚÀàµÄËùÓÐÊý¾Ý³ÉÔ±»áÊ×ÏȽøÐгõʼ»¯¡£
»ù±¾ÀàÐÍ£ºintÐÍ£¬³õʼ»¯Îª0¡£
Èç¹ûΪ¶ÔÏó£ºÕâЩ¶ÔÏó»á°´Ë³Ðò³õʼ»¯¡£
¡ùÔÚËùÓÐÀà³ÉÔ±³õʼ»¯Íê³ÉÖ®ºó£¬²Åµ÷Óñ¾ÀàµÄ¹¹Ôì·½·¨´´½¨¶ÔÏó¡£
¹¹Ôì·½·¨µ ......
ÖÚËùÖÜÖª£¬ÔÚ³ÌÐò¿ª·¢ÖУ¬ÄÑÃâ»áÓöµ½ÐèҪƥÅä¡¢²éÕÒ¡¢Ìæ»»¡¢ÅжÏ×Ö·û´®µÄÇé¿ö·¢Éú£¬¶øÕâЩÇé¿öÓÐʱÓֱȽϸ´ÔÓ£¬Èç¹ûÓô¿±àÂ뷽ʽ½â¾ö£¬ÍùÍù»áÀ˷ѳÌÐòÔ±µÄʱ¼ä¼°¾«Á¦¡£Òò´Ë£¬Ñ§Ï°¼°Ê¹ÓÃÕýÔò±í´ïʽ£¬±ã³ÉÁ˽â¾öÕâһì¶ÜµÄÖ÷ÒªÊֶΡ£
´ó¼Ò¶¼ÖªµÀ£¬ÕýÔò±í´ïʽÊÇÒ»ÖÖ¿ÉÒÔÓÃÓÚģʽƥÅäºÍÌæ»»µÄ¹æ·¶£¬Ò»¸öÕýÔò±í´ïʽ¾ÍÊÇÓÉÆÕͨµÄ ......
Àà×¢ÊÍ£¬¿ÉÒÔÖ±½ÓʹÓÃeclipseµÄcode style¹¦ÄÜ¡£
window-reference-java-code style-code templates-comments£¬Ñ¡ÖÐtype£¬È»ºóµã»÷¡¾edit¡¿°´Å¥£¬ÊäÈëÀà×¢ÊÍÐÅÏ¢£¬±£´æ¡£
ÒÔºóÒªÌí¼Ó°æÈ¨Ê±£¬°´Ctrl+alt+J£¬¾Í¿ÉÒÔÁË¡£
/**
* @ ${file_name}
* ×÷ÓÃ
* ×¢ÒâÊÂÏî
* ×¢Ò⣺&nb ......
¶ÔÓÚjavaÏîÄ¿ÖеİüÃüÃû¶ÔÓÚ¿ª·¢ÈËÔ±À´ËµÔÙ¼òµ¥²»¹ýÁË£¬¿ÉÄÜÓÐЩÈËÈÏΪÈç¹û²ÉÓÃStruts+Spring+Hibernate¿ª·¢¿ò¼Ü£¬ÄÇô¾ÍÓÃaction+service+modelÀ´ÃüÃûºÃÁË£¬²ã´ÎÇåÎú£¬Ò×ÓÚÀí½â£¬ÕâЩ¿´ËÆÃ»ÓÐÈκÎÎÊÌ⣬µ«ÊÇÄãÓÐûÓÐÅöµ½¹ýҪʵÏÖ¸ö¹¦ÄÜʱ£¬ÏîÄ¿ÀïµÄÀàÎļþºÜ¶à£¬ÄãÐèÒªÔÚaction¡¢service¡¢model°üÏÂÀ´» ......
·þÎñ¶Ë£º
package socket;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) {
try {
ServerSocket server = new Se ......