Java ÀàµÄÈÈÌæ»» —— ¸ÅÄî¡¢Éè¼ÆÓëʵÏÖ
http://www.ibm.com/developerworks/cn/java/j-lo-hotswapcls/index.html
Java ÀàµÄÈÈÌæ»» —— ¸ÅÄî¡¢Éè¼ÆÓëʵÏÖ
¹¹½¨»ùÓÚ Java µÄÔÚÏßÉý¼¶ÏµÍ³
¼¶±ð£º Öм¶
Ëï Ãù
,
µË »Ô
,
2010 Äê 1 ÔÂ 14 ÈÕ
¶Ô
ÓÚÐí¶à¹Ø¼üÐÔÒµÎñ»òÕßÅÓ´óµÄ Java
ϵͳÀ´Ëµ£¬Èç¹û±ØÐëÔÝͣϵͳ·þÎñ²ÅÄܽøÐÐϵͳÉý¼¶£¬¼È»á´ó´óÓ°Ï쵽ϵͳµÄ¿ÉÓÃÐÔ£¬Í¬Ê±Ò²Ôö¼ÓÁËϵͳµÄ¹ÜÀíºÍά»¤³É±¾¡£Òò´Ë£¬Èç¹ûÄܹ»·½±ãµØÔÚ²»Í£Ö¹ÏµÍ³Òµ
ÎñµÄÇé¿öϽøÐÐϵͳÉý¼¶£¬Ôò¿ÉÒԺܺõؽâ¾öÉÏÊöÎÊÌâ¡£ÔÚ±¾ÎÄÖУ¬ÎÒÃǽ«»ùÓÚʵÀý£¬¶Ô¹¹½¨ÔÚÏßÉý¼¶ Java
ϵͳµÄ»ù´¡¼¼ÊõºÍÉè¼ÆÔÔò½øÐÐÁËÉîÈëµÄ½²½â¡£ÏàÐŶÁÕßÄܹ»¸ù¾ÝÎÄÖеļ¼Êõ¹¹½¨³ö×Ô¼ºµÄÔÚÏßÉý¼¶ÏµÍ³À´¡£
Java ClassLoader ¼¼ÊõÆÊÎö
ÔÚ±¾ÎÄÖУ¬ÎÒÃǽ«²»¶Ô Java ClassLoader µÄϸ½Ú½øÐйýÓÚÏêϸµÄ½²½â£¬¶øÊǹØ×¢Óں͹¹½¨ÔÚÏßÉý¼¶ÏµÍ³Ïà¹ØµÄ»ù´¡¸ÅÄî¡£¹ØÓÚ ClassLoader µÄÏêϸϸ½ÚÐí¶à×ÊÁÏ¿ÉÒԲο¼£¬ÓÐÐËȤµÄ¶ÁÕß¿ÉÒÔ×ÔÐÐÑжÁ¡£
Òª¹¹½¨ÔÚÏßÉý¼¶ÏµÍ³£¬Ò»¸öÖØÒªµÄ¼¼Êõ¾ÍÊÇÄܹ»ÊµÏÖ Java ÀàµÄÈÈÌæ»» —— Ò²¾ÍÊÇÔÚ²»Í£Ö¹ÕýÔÚÔËÐеÄϵͳµÄÇé¿öϽøÐÐÀࣨ¶ÔÏ󣩵ÄÉý¼¶Ìæ»»¡£¶ø Java µÄ ClassLoader ÕýÊÇʵÏÖÕâÏî¼¼ÊõµÄ»ù´¡¡£
ÔÚ
Java ÖУ¬ÀàµÄʵÀý»¯Á÷³Ì·ÖΪÁ½¸ö²¿·Ö£ºÀàµÄ¼ÓÔغÍÀàµÄʵÀý»¯¡£ÀàµÄ¼ÓÔØÓÖ·ÖΪÏÔʽ¼ÓÔغÍÒþʽ¼ÓÔØ¡£´ó¼ÒʹÓà new
¹Ø¼ü×Ö´´½¨ÀàʵÀýʱ£¬Æäʵ¾ÍÒþʽµØ°üº¬ÁËÀàµÄ¼ÓÔعý³Ì¡£¶ÔÓÚÀàµÄÏÔʽ¼ÓÔØÀ´Ëµ£¬±È½Ï³£ÓõÄÊÇ Class.forName¡£Æäʵ£¬ËüÃǶ¼ÊÇͨ¹ýµ÷ÓÃ
ClassLoader ÀàµÄ loadClass ·½·¨À´Íê³ÉÀàµÄʵ¼Ê¼ÓÔع¤×÷µÄ¡£Ö±½Óµ÷Óà ClassLoader µÄ loadClass
·½·¨ÊÇÁíÍâÒ»ÖÖ²»³£ÓõÄÏÔʽ¼ÓÔØÀàµÄ¼¼Êõ¡£
ͼ 1. Java Àà¼ÓÔØÆ÷²ã´Î½á¹¹Í¼
ClassLoader
ÔÚ¼ÓÔØÀàʱÓÐÒ»¶¨µÄ²ã´Î¹ØϵºÍ¹æÔò¡£ÔÚ Java
ÖУ¬ÓÐËÄÖÖÀàÐ͵ÄÀà¼ÓÔØÆ÷£¬·Ö±ðΪ£ºBootStrapClassLoader¡¢ExtClassLoader¡¢AppClassLoader
ÒÔ¼°Óû§×Ô¶¨ÒåµÄ ClassLoader¡£ÕâËÄÖÖÀà¼ÓÔØÆ÷·Ö±ð¸ºÔð²»Í¬Â·¾¶µÄÀàµÄ¼ÓÔØ£¬²¢ÐγÉÁËÒ»¸öÀà¼ÓÔصIJã´Î½á¹¹¡£
BootStrapClassLoader
´¦ÓÚÀà¼ÓÔØÆ÷²ã´Î½á¹¹µÄ×î¸ß²ã£¬¸ºÔð sun.boot.class.path ·¾¶ÏÂÀàµÄ¼ÓÔØ£¬Ä¬ÈÏΪ jre/lib Ŀ¼ÏµĺËÐÄ API »ò
-Xbootclasspath Ñ¡ÏîÖ¸¶¨µÄ jar °ü¡£ExtClassLoader µÄ¼ÓÔØ·¾¶Îª java.ext.dirs£¬Ä¬ÈÏΪ
jre/lib/ext Ŀ¼»òÕß -Djava.ext.dirs Ö¸¶¨Ä¿Â¼Ï嵀 jar °ü¼ÓÔØ¡£AppClassLoader µÄ¼ÓÔØ·¾¶Îª
java.class.path£¬Ä¬ÈÏΪ»·¾³±äÁ¿ CLASS
Ïà¹ØÎĵµ£º
“JDK1.5”µÄÒ»¸öÖØÒªÖ÷Ìâ¾ÍÊÇͨ¹ýÐÂÔöһЩÌØÐÔÀ´¼ò»¯¿ª·¢£¬ÕâЩÌØÐÔ°üÀ¨·ºÐÍ£¬for-each¡¡Ñ»·£¬×Ô¶¯×°°ü/²ð°ü£¬Ã¶¾Ù£¬¿É±ä²ÎÊý,¡¡¾²Ì¬µ¼Èë¡¡¡£Ê¹ÓÃÕâЩÌØÐÔÓÐÖúÓÚÎÒÃDZàд¸ü¼ÓÇåÎú£¬¾«º·£¬°²È«µÄ´úÂë¡£
Ò»£® Ê×Ïȼòµ¥½éÉÜһϸ÷ÖÖÌØÐÔ¼°ÆäʹÓÃ
1.·ºÐÍ(Generic)
C++ͨ¹ýÄ£°å¼¼Êõ¿ÉÒÔÖ¸¶¨¼¯ºÏµÄÔªËØÀàÐÍ£¬¶øJ ......
ÒýÑÔ
ÓÐJAVA¿ª·¢¾ÑéµÄÅóÓÑÃÇÒ»¶¨Åöµ½¹ýÏÂÃæµÄÕâÖÖÇé¿ö,ÄǾÍÊÇ×Ô¼ºËù¿ª·¢µÄÓ¦ÓÃÔËÐÐÁËÒ»¶Îʱ¼äºóÆäÐÔÄÜ»ò ÕßÏìÓ¦ËٶȻáÓÐÃ÷ÏԵĽµµÍ.ÕâÊÇÓɶ෽ÃæµÄÔÒòÔì³ÉµÄ¼´ÓгÌÐò±¾ÉíµÄÓÅ»¯ÎÊÌâ,Ò²ÓÐÔËÐл·¾³ÎÊÌâ.´ËÔËÐл·¾³¼´°üÀ¨Ó²¼þ»·¾³Ò²°üÀ¨Èí¼þ»·¾³.´ó¶àÊýÈ˵ÚÒ» ¸öÄÜÏëµ½µÄ½â¾ö·½·¨ÊÇÌáÉýÓ²¼þµÄÅäÖöøºöÂÔÁ˳ÌÐò±¾ÉíµÄÔËÐл·¾ ......
½ñÈÕÔÚÍøÉÏżȻÅöµ½Ò»¸ö³õѧÕßµÄjavaÌâÄ¿£¬¾Í³¢ÊÔµÄ×öÁËһϣ¬µ«Ã»Ïëµ½Ò»×ö¾ÍÊǽӽüÒ»¸öÖÓÍ·°¡£¬¿´À´javaѧϰµÄ·ÉÏ»¹ÊÇ·ÂþÂþÙâÐÞÔ¶°¡¡£
ÌâÄ¿ÈçÏ£º
±àдһ¸öJava Application ³ÌÐò£¬½ÓÊÜÓû§ÊäÈëµÄÒ»¸ö¸¡µãÊý£¬½«ÆäµÄÕûÊý²¿·ÖºÍСÊý²¿·Ö·Ö±ðÊä³ö¡£
È磺ÊäÈë56.6 £¬ÔòÓÐ
¡¡¡¡¡¡¡¡¡¡¡¡ÕûÊý²¿·Ö£º56
¡¡¡¡¡¡¡¡¡¡¡¡ ......
Javaʱ¼äÉèΪ¶þÊ®ËÄСʱÖƺÍÊ®¶þСʱÖƵÄÇø±ð£º
1£© ¶þÊ®ËÄСʱÖÆ£º “yyyy-MM-dd HH:mm:ss”
2£©Ê®¶þСʱÖÆ£º “"yyyy-MM-dd hh:mm:ss"”
Àý£¨¶þÊ®ËÄСʱÖÆ£©£º
private String getTime(){
Calendar now;
SimpleDateFormat fmt;
now = Calendar.getInstance();
fmt = new S ......