Java ±à³ÌµÄ¶¯Ì¬ÐÔ£¬µÚ 5 ²¿·Ö: ¶¯Ì¬×ª»»Àà
ÔÚ¾¹ýÒ»¶Îʱ¼äµÄÐÝÏ¢Ö®ºó£¬Dennis Sosnoski ÓÖ»ØÀ´ÍƳöÁËËûµÄ
Java ±à³ÌµÄ¶¯Ì¬ÐÔ
ϵ
ÁÐµÄµÚ 5 ²¿·Ö¡£ÄúÒÑÔÚÇ°ÃæµÄÎÄÕÂÖп´µ½ÁËÈçºÎ±àдÓÃÓÚת»» Java ÀàÎļþÒԸıä´úÂëÐÐΪµÄ³ÌÐò¡£ÔÚ±¾ÆÚÖУ¬Dennis½«Õ¹Ê¾ÈçºÎʹÓÃ
Javassist
¿ò¼Ü£¬°Ñת»»Óëʵ¼ÊµÄÀà¼ÓÔØ¹ý³Ì½áºÏÆðÀ´£¬ÓÃÒÔ½øÐÐÁé»îµÄ“¼´Ê±”ÃæÏò·½ÃæµÄÌØÐÔ´¦Àí¡£ÕâÖÖ·½·¨ÔÊÐíÄú¾ö¶¨ÏëÒªÔÚÔËÐÐʱ¸Ä±äµÄÄÚÈÝ£¬²¢Ç±µØÔÚÿ´ÎÔËÐгÌÐò
ʱ×ö³ö²»Í¬µÄÐ޸ġ£ÔÚÕû¸ö¹ý³ÌÖУ¬Äú»¹½«¸üÉîÈëµØÁ˽âÏòJVM ÖмÓÔØÀàµÄÒ»°ãÎÊÌâ¡£
ÔÚµÚ 4 ²¿·Ö“
Óà Javassist ½øÐÐÀàת»»
”ÖУ¬ÄúѧϰÁËÈçºÎʹÓà Javassist ¿ò¼ÜÀ´×ª»»±àÒëÆ÷Éú³ÉµÄ
Java ÀàÎļþ£¬Í¬Ê±Ð´»ØÐ޸ĹýµÄÀàÎļþ¡£ÕâÖÖÀàÎļþת»»²½Öè¶ÔÓÚ×ö³ö³Ö¾Ã±ä¸üÊǺÜÀíÏëµÄ£¬µ«ÊÇÈç¹ûÏëÒªÔÚÿ´ÎÖ´ÐÐÓ¦ÓóÌÐòʱ×ö³ö²»Í¬µÄ±ä¸ü£¬ÕâÖÖ·½·¨¾Í²»Ò»¶¨ºÜ·½±ã¡£¶ÔÓÚÕâÖÖÔÝʱµÄ±ä¸ü£¬²ÉÓÃÔÚÄúʵ¼ÊÆô¶¯Ó¦ÓóÌÐòʱÆð×÷Óõķ½·¨ÒªºÃµÃ¶à¡£
JVM
Ìåϵ½á¹¹ÎªÎÒÃÇÌṩÁËÕâÑù×öµÄ±ãÀû;¾¶¨D¨Dͨ¹ýʹÓà classloader ʵÏÖ¡£Í¨¹ýʹÓà classloader
¹Ò¹³£¨hook£©£¬Äú¿ÉÒÔÀ¹½Ø½«Àà¼ÓÔØµ½ JVM
ÖеĹý³Ì£¬²¢ÔÚʵ¼Ê¼ÓÔØÕâЩÀà֮ǰת»»ËüÃÇ¡£ÎªÁË˵Ã÷Õâ¸ö¹ý³ÌÊÇÈçºÎ¹¤×÷µÄ£¬ÎÒ½«Ê×ÏÈչʾÀà¼ÓÔØ¹ý³ÌµÄÖ±½ÓÀ¹½Ø£¬È»ºóչʾ Javassist
ÈçºÎÌṩÁËÒ»ÖÖ¿ÉÔÚÄúµÄÓ¦ÓóÌÐòÖÐʹÓõıãÀû½Ý¾¶¡£ÔÚÕû¸ö¹ý³ÌÖУ¬ÎÒ½«ÀûÓÃÈ¡×Ô±¾ÏµÁÐÒÔǰÎÄÕÂÖеĴúÂëÆ¬¶Ï¡£
²»Òª´í¹ý±¾ÏµÁÐµÄÆäÓàÎÄÕÂ
µÚ 1 ²¿·Ö£¬“
ÀàºÍÀà×°Èë
”£¨2003 Äê 4 Ô£©
µÚ 2 ²¿·Ö£¬“
ÒýÈë·´Éä
”£¨2003 Äê 6 Ô£©
µÚ 3 ²¿·Ö£¬“
Ó¦Ó÷´Éä
”£¨2003 Äê 7 Ô£©
µÚ 4 ²¿·Ö£¬“
Óà Javassist ½øÐÐÀàת»»
”£¨2003 Äê 9 Ô£©
¼ÓÔØÇøÓò
ÔËÐÐ Java Ó¦ÓóÌÐòµÄͨ³£·½Ê½ÊÇ×÷Ϊ²ÎÊýÏò JVM Ö¸¶¨Ö÷Àà¡£Õâ¶ÔÓÚ±ê×¼²Ù×÷ûÓÐʲôÎÊÌ⣬µ«ÊÇËüûÓÐÌṩ¼°Ê±À¹½ØÀà¼ÓÔØ¹ý³ÌµÄÈκÎ;¾¶£¬¶øÕâÖÖÀ¹½Ø¶Ô´ó¶àÊý³ÌÐòÀ´ËµÊǺÜÓÐÓõġ£ÕýÈçÎÒÔÚµÚ
1 ²¿·Ö“
ÀàºÍÀà×°Èë
”ÖÐËùÌÖÂ۵ģ¬Ðí¶àÀàÉõÖÁÔÚÖ÷À໹ûÓпªÊ¼Ö´ÐÐ֮ǰ¾ÍÒѾ¼ÓÔØÁË¡£ÒªÀ¹½ØÕâЩÀàµÄ¼ÓÔØ£¬ÄúÐèÒªÔÚ³ÌÐòµÄÖ´Ðйý³ÌÖнøÐÐijÖ̶ֳȵÄÖØ¶¨Ïò¡£
ÐÒÔ˵ÄÊÇ£¬Ä£Äâ JVM ÔÚÔËÐÐÓ¦ÓóÌÐòµÄÖ÷ÀàʱËù×öµÄ¹¤×÷ÊÇÏ൱ÈÝÒ׵ġ£ÄúËùÐè×öµÄ¾ÍÊÇʹÓ÷´É䣨ÕâÊÇÔÚ²»µÃ
µÚ
2 ²
Ïà¹ØÎĵµ£º
JAVAÏà¹Ø»ù´¡ÖªÊ¶
1¡¢ÃæÏò¶ÔÏóµÄÌØÕ÷ÓÐÄÄЩ·½Ãæ
2¡¢StringÊÇ×î»ù±¾µÄÊý¾ÝÀàÐÍÂð?
3¡¢int ºÍ Integer ÓÐÊ²Ã´Çø±ð
4¡¢String ºÍStringBufferµÄÇø±ð
5¡¢ÔËÐÐʱÒì³£ÓëÒ»°ãÒì³£ÓкÎÒìͬ£¿
6¡¢Ëµ³öServletµÄÉúÃüÖÜÆÚ£¬²¢Ëµ³öServletºÍCGIµÄÇø±ð¡£
7¡¢Ëµ³öArrayList,Vector, LinkedListµÄ´æ´¢ÐÔÄܺÍÌØÐÔ
8¡¢EJBÊÇ»ùÓÚÄÄЩ ......
ת[http://hi.baidu.com/ge_star/blog/item/8b23b210f8066f08203f2e90.html]
1.°üÃüÃû:È«²¿×ÖĸСд:cn.package.bean
2.ÀàÃüÃû:µ¥´ÊµÄÊ××Öĸ´óд:SimpleBean
3.ÊôÐÔÃû³Æ:µÚÒ»¸öµ¥´ÊµÄÊ××ÖĸСд,Ö®ºóÿ¸öµ¥´ÊµÄÊ××Öĸ´óдstudentName
4.·½·¨ÃüÃû:ÓëÊôÐÔÃüÃûÏàͬ:public void sayHello()
5.³ ......
/**
* ¶ÑÅÅÐò
*
* */
public void heapSort(double[] a){
double temp;
initCreateHeap(a);
for(int i = a.length - 1; i > 0; i --){
temp = a[0];
a[0] = a[i];
a[i] = temp;
createHeap(a, i, 0);
}
}
/**
* ½«Êý×é¿´³ÉÍêÈ«¶þ²æÊ÷£¬½¨Á¢×î´ó¶Ñ
* */
private ......
Apache Byte Code Engineering Library (BCEL)¿ÉÒÔÉîÈë Java
ÀàµÄ×Ö½ÚÂë¡£¿ÉÒÔÓÃËüת»»ÏÖÓеÄÀà±íʾ»òÕß¹¹½¨ÐµÄÀ࣬ÒòΪ BCEL ÔÚµ¥¶ÀµÄ JVM
Ö¸Áî¼¶±ðÉϽøÐвÙ×÷£¬ËùÒÔ¿ÉÒÔÈÃÄú¶Ô´úÂëÓÐ×îÇ¿´óµÄ¿ØÖÆ¡£²»¹ý£¬ÕâÖÖÄÜÁ¦µÄ´ú¼ÛÊǸ´ÔÓÐÔ¡£ÔÚ±¾ÎÄÖУ¬Java ¹ËÎÊ Dennis Sosnoski
½éÉÜÁË BCEL µÄ»ù±¾ÄÚÈÝ£¬²¢Òýµ¼¶ÁÕßÍê³ÉÒ»¸öʾÀ ......