Java JNI
http://xxw8393.blog.163.com/blog/static/3725683420091023535411/
Java µÄ³öÏÖ¸ø´ó¼Ò¿ª·¢´øÀ´µÄ¼«´óµÄ·½±ã¡£µ«ÊÇ£¬Èç¹ûÎÒÃÇÓдóÁ¿ÔÓеľ¹ý¹ã·º²âÊԵķÇJava´úÂ룬½«ËüÃÇÈ«²¿ÓÃJavaÀ´ÖØÐ´£¬¿ÖÅÂ»á´øÀ´¾Þ´óµÄ¹¤×÷Á¿ºÍ³¤ÆÚµÄ²âÊÔ£»Èç¹ûÎÒÃǵÄÓ¦ÓÃÖÐÐèÒª·ÃÎʵ½Ìض¨µÄÉ豸£¬ÉõÖÁÊǽö·ûºÏ¹«Ë¾ÄÚ²¿ÐÅÏ¢½»»¥¹æ·¶µÄÉ豸£¬»òij¸öÌØ¶¨µÄ²Ù×÷ϵͳ²ÅÓеÄÌØÐÔ£¬Java¾ÍÏÔµÃÓÐЩÁ¦²»´ÓÐÄÁË¡£Ãæ¶ÔÕâЩÎÊÌ⣬Sun¹«Ë¾ÔÚJDK1.0ÖоͶ¨ÒåÁËJNI¹æ·¶£¬Ëü¹æ¶¨ÁËJavaÓ¦ÓóÌÐò¶Ô±¾µØ·½·¨µÄµ÷ÓùæÔò¡£
»ØÒ³Ê×
ʵÏÖ²½Öè¼°Ïà¹Øº¯ÊýʹÓÃ
±¾ÎĽ«Ò»²½²½ËµÃ÷ÔÚLinuxƽ̨ÏÂÈçºÎʵÏÖ±¾µØ¹²Ïí¿âÓëJavaÐͬ¹¤×÷¡£Hello World³ÌÐòÊÇĿǰ±ê×¼µÄÈëÃŵÚÒ»²½£¬ÄÇô£¬ÎÒÒ²ÒÔÀàËÆµÄÓ¦ÓÃ×îΪÑùÀý¡£
µÚÒ»²½£¬¶¨ÒåÒ»¸ö Java Àà -- Hello. ËüÌṩSayHello·½·¨£º
´ËʱӦעÒâÁ½µã£º
1.ΪҪʹÓõÄÿ¸ö±¾µØ·½·¨±àд±¾µØ·½·¨ÉùÃ÷£¬ÆäÉùÃ÷·½Ê½ÓëÆÕͨ Java ·½·¨½Ó¿Úûʲô²»Í¬£¬Ö»ÊDZØÐëÖ¸¶¨ native ¹Ø¼ü×Ö£¬ÈçÏÂËùʾ£º
de>public native void SayHello(String strName);de>
ÔÚÕâ¸öº¯ÊýÖУ¬ÎÒÃǽ«¸ù¾Ý´«½øµÄÈËÃû£¬ÏòijÈËÎʺá£
2.±ØÐëÏÔʽµØ¼ÓÔØ±¾µØ´úÂë¿â¡£ÎÒÃÇÐèÔÚÀàµÄÒ»¸ö¾²Ì¬¿éÖмÓÔØÕâ¸ö¿â£º
static
{
System.loadLibrary("hello");
}
ÔÙ¼ÓÉϱØÒªµÄÒì³£´¦Àí¾ÍÉú³ÉÈçÏÂÔ´ÎļþHello.java£º
public class Hello
{
static
{
try
{
//´Ë´¦¼´Îª±¾µØ·½·¨ËùÔÚÁ´½Ó¿âÃû
System.loadLibrary("hello");
}
catch(UnsatisfiedLinkError e)
{
System.err.println( "Cannot load hello library:\n " +
e.toString() );
}
}
public Hello()
{
}
//ÉùÃ÷µÄ±¾µØ·½·¨
public native void SayHello(String strName);
}
±àÒëºóÉú³ÉHello.classÎļþ¡£
µÚ¶þ²½£¬Éú³É±¾µØÁ´½Ó¿â¡£¾ßÌå¹ý³ÌÈçÏ£º
1. ҪΪÒÔÉ϶¨ÒåµÄÀàÉú³É Java ±¾µØ½Ó¿ÚÍ·Îļþ£¬ÐèʹÓÃjavah£¬Java ±àÒëÆ÷µÄ javah ¹¦Äܽ«¸ù¾Ý HelloÀàÉú³É±ØÒªµÄÉùÃ÷£¬´ËÃüÁÉú³ÉHello.h Îļþ£¬ÎÒÃÇÔÚ¹²Ïí¿âµÄ´úÂëÖÐÒª°üº¬Ëü£¬javah²»Ê¹Ä¬ÈÏÄÚ²¿ÃüÁÐèÒªÖ¸Ã÷·¾¶£¬ËüÔÚJDKµÄbinĿ¼Ï£¬ÔÚÎÒµÄLinux»·¾³ÏÂÃüÁîÈçÏ£º
/home/jbuilder/jdk1.3.1/bin/javah Hello
Éú³ÉµÄHello.h Îļþ ÄÚÈÝÈçÏÂËùʾ£º
/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class Hello */
#ifndef _Included_Hello
#define _Included_Hello
#ifdef __cplusp
Ïà¹ØÎĵµ£º
ת×Ô£ºhttp://java.mblogger.cn/sadfasfasd/
×òÌì¸ãÁ˶¯Ì¬×Ô¶¯¼ÓÔØÅäÖÃÎļþ£¬ÓÖÓöµ½Â·¾¶ÎÊÌ⣬ÕÒµ½ÕâÆªºÜ°ôµÄÎÄÕ£¬ÊÕ²ØÒ»Ï£¬À´×Ô
http://java.chinaitlab.com/base/532062_3.html http://www.blogjava.net/killme2008/archive/2007/06/08/122758.html
Ç ......
1.±È½Ïºó£¬·µ»Ø0,1,-1 µÄ½á¹û£¬¿ÉÒÔÓÃ
return (thisVal<anotherVal ? -1 : (thisVal==anotherVal ? 0 : 1));
ЧÂʸü¸ß
ÒÔÏÂת×Ô http://bluelzx.javaeye.com/blog/200987
1.
Á½ÖֱȽϽӿڷÖÎö
ÔÚ
“
¼¯ºÏ¿ò¼Ü
”
ÖÐÓÐÁ½ÖֱȽϽӿڣº
Comparable
½Ó¿ÚºÍ
Comparator
½Ó¿Ú¡£
Compara ......
¡¾×ª¡¿JavaÖеÄλÔËËã·û
Ô×÷ÕߣºRosen Jiang ³ö´¦£ºhttp://www.blogjava.net/rosen
ÒÆÎ»ÔËËã·û
°üÀ¨£º
“>> ÓÒÒÆ”£»“<< ×óÒÆ”£»“>>> ÎÞ·ûºÅÓÒÒÆ”
Àý×Ó£º
-5>>3=-1
1111 1111 1111 1111 1111 1111 1111 ......
Ò».JavaÐéÄâ»úµÄÉúÃüÖÜÆÚ
1.JavaÐéÄâ»úµÄÔðÈÎÊǸºÔðÔËÐÐJava³ÌÐò£¬Æô¶¯Ò»¸öJava³ÌÐòʱ£¬²úÉúÒ»¸öÐéÄâ»úʵÀý£¬µ±³ÌÐò¹Ø±ÕÍ˳ö£¬ÐéÄâ»úʵÀý¼´ËæÖ®ÏûÍö£¬Ã¿Ò»¸ö³ÌÐòÔËÐÐÓÚ×Ô¼ºµÄJavaÐéÄâ»úʵÀýÖС£
2.JVMͨ¹ýµ÷ÓÃij¸ö³õʼÀàµÄmain()·½·¨ÔËÐÐJava³ÌÐò
3.Java³ÌÐò³õʼÀàÖеÄmain()·½·¨£¬×÷Ϊ¸Ã³ÌÐò³õʼÏß³ÌµÄÆðµã£¨Java³ÌÐòµÄ ......
http://xxw8393.blog.163.com/blog/static/37256834200910432656672/
Encoding.java
package org.loon.test.encoding;
/** *//**
* <p>
* Title: LoonFramework
* </p>
* <p>
* Description:±àÂë»ù±¾ÀàÐͼ¯ºÏ
* </p>
* <p>
* Co ......