Java AnnotationʹÓôóÈ« (ZT)
Ò»¡¢Annotation¾¿¾¹ÊÇʲô£¿
Annotation ÌṩÁËÒ»ÌõÓë³ÌÐòÔªËØ¹ØÁªÈκÎÐÅÏ¢»òÕßÈκÎÔªÊý¾Ý£¨metadata£©µÄ;¾¶¡£´ÓijЩ·½Ãæ¿´£¬annotation¾ÍÏñÐÞÊηûÒ»Ñù±»Ê¹Ó㬲¢Ó¦ÓÃÓÚ°ü¡¢ÀàÐÍ¡¢¹¹Ôì·½·¨¡¢·½·¨¡¢³ÉÔ±±äÁ¿¡¢²ÎÊý¡¢±¾µØ±äÁ¿µÄÉùÃ÷ÖС£ÕâЩÐÅÏ¢±»´æ´¢ÔÚannotationµÄ“name=value”½á¹¹¶ÔÖС£ annotationÀàÐÍÊÇÒ»ÖÖ½Ó¿Ú£¬Äܹ»Í¨¹ýjava·´ÉäAPIµÄ·½Ê½Ìṩ¶ÔÆäÐÅÏ¢µÄ·ÃÎÊ¡£
annotationÄܱ»ÓÃÀ´ÎªÄ³¸ö³ÌÐòÔªËØ£¨Àà¡¢·½·¨¡¢³ÉÔ±±äÁ¿µÈ£©¹ØÁªÈκεÄÐÅÏ¢¡£ÐèҪעÒâµÄÊÇ£¬ÕâÀï´æÔÚ×ÅÒ»¸ö»ù±¾µÄDZ¹æÔò£ºannotaion²»ÄÜÓ°Ïì³ÌÐò´úÂëµÄÖ´ÐУ¬ÎÞÂÛÔö¼Ó¡¢É¾³ý annotation£¬´úÂ붼ʼÖÕÈçÒ»µÄÖ´ÐС£ÁíÍ⣬¾¡¹ÜһЩannotationͨ¹ýjavaµÄ·´Éäapi·½·¨ÔÚÔËÐÐʱ±»·ÃÎÊ£¬¶øjavaÓïÑÔ½âÊÍÆ÷ÔÚ¹¤×÷ʱºöÂÔÁËÕâЩannotation¡£ÕýÊÇÓÉÓÚjavaÐéÄâ»úºöÂÔÁËannotation£¬µ¼ÖÂÁËannotationÀàÐÍÔÚ´úÂëÖÐÊÇ“²»Æð×÷ÓԵģ»Ö»ÓÐͨ¹ýijÖÖÅäÌ׵Ť¾ß²Å»á¶ÔannotationÀàÐÍÖеÄÐÅÏ¢½øÐзÃÎʺʹ¦Àí¡£±¾ÎÄÖн«º¸Ç±ê×¼µÄannotationºÍmeta- annotationÀàÐÍ£¬Åã°éÕâЩannotationÀàÐ͵Ť¾ßÊÇjava±àÒëÆ÷£¨µ±È»ÒªÒÔijÖÖÌØÊâµÄ·½Ê½´¦ÀíËüÃÇ£©¡£
ÓÉÓÚÉÏÊöÔÒò£¬annotationÔÚʹÓÃʱʮ·Ö¼ò±ã¡£Ò»¸ö±¾µØ±äÁ¿¿ÉÒÔ±»Ò»¸öÒÔNonNullÃüÃûµÄannotationÀàÐÍËù±ê×¢£¬À´×÷Ϊ¶ÔÕâ¸ö±¾µØ±äÁ¿²»Äܱ»¸³ÓènullÖµµÄ¶ÏÑÔ¡£¶øÎÒÃÇ¿ÉÒÔ±àдÓëÖ®ÅäÌ×µÄÒ»¸öannotation´úÂë·ÖÎö¹¤¾ß£¬Ê¹ÓÃËüÀ´¶Ô¾ßÓÐÇ°Ãæ±äÁ¿µÄ´úÂë½øÐнâÎö£¬²¢ÇÒ³¢ÊÔÑéÖ¤Õâ¸ö¶ÏÑÔ¡£µ±È»ÕâЩ´úÂë²¢²»±Ø×Ô¼º±àд¡£ÔÚJDK°²×°ºó£¬ÔÚJDK/binĿ¼ÖпÉÒÔÕÒµ½ÃûΪ“apt”µÄ¹¤¾ß£¬ËüÌṩÁË´¦ÀíannotationµÄ¿ò¼Ü£ºËüÆô¶¯ºóɨÃèÔ´´úÂëÖеÄannotation£¬²¢µ÷ÓÃÎÒÃǶ¨ÒåºÃµÄannotation´¦ÀíÆ÷Íê³ÉÎÒÃÇËùÒªÍê³ÉµÄ¹¤×÷£¨±ÈÈçÑéÖ¤Ç°ÃæÀý×ÓÖеĶÏÑÔ£©¡£Ëµµ½ÕâÀ annotationµÄÇ¿´ó¹¦ÄÜËÆºõ¿ÉÒÔÌæ´úXDocletÕâÀàµÄ¹¤¾ßÁË£¬Ëæ×ÅÎÒÃǵÄÉîÈ룬´ó¼Ò»á¸ü¼Ó¼áÐÅÕâÒ»µã¡£
×¢£ºÏêϸÃèÊöÇë²Î¿´jsr250¹æ·¶£º
http://www.jcp.org/aboutJava/communityprocess/pfd/jsr250/
¶þ¡¢AnnotationµÄ¶¨Ò壺
Õâ¶ÎÎÄ×Ö¿ªÊ¼½éÉÜannotationÏà¹Ø¼¼Êõ¡£ÔÚ´Ë´ó¼Ò½«¿´µ½java5.0µÄ±ê×¼annotationÀàÐÍ£¬ÕâÖÖ±ê×¼ÀàÐ;ÍÊÇǰÎÄÖÐËù˵µÄ“ÄÚ½¨”ÀàÐÍ£¬ËüÃÇ¿ÉÒÔÖ±½Ó±»javacÖ§³Ö¡£¿ÉϲµÄÊÇ£¬ÔÚjava6.0beta°æÖеÄjavacÒѾ¼ÓÈëÁ˶Ô×Ô¶¨ÒåannotationµÄÖ§³Ö¡£
1¡£AnnotationµÄ¸ÅÄîºÍÓï·¨£º
Ïà¹ØÎĵµ£º
¾¹ýÉÏһƪµÄѧϰ£¬Ó¦¸Ã¶ÔJavaÖеÄRuntimeÀàµÄexec·½·¨ÁË´óÖµÄÁ˽⣬Ҳ֪µÀÓ¦¸ÃÈçºÎȥʹÓÃÁ˰ɡ£
Ê×ÏÈѧϰÏ£ºProcessÀà¡£
¼òµ¥µØ²âÊÔһϣº
µ÷ÓÃJavacÃüÁ²¢²é¿´Ö´ÐÐÃüÁîµÄ·µ»ØÖµ£¬²¢Êä³öµ½¿ØÖÆÌ¨ÉÏÈ¥¡£
import java.io.IOException;
class Exec_Javac{
public static void main(String []args)throws IO ......
long startTime=System.currentTimeMillis(); //»ñÈ¡¿ªÊ¼Ê±¼ä
doSomeThing(); //²âÊԵĴúÂë¶Î
long endTime=System.currentTimeMillis(); //»ñÈ¡½áÊøÊ±¼ä
System.out.println("³ÌÐòÔËÐÐʱ¼ä£º "+(end-start)+"ms"); ......
ed2k://|file|[ReadFree]_C#.¿ª·¢ÈËÔ±Ö¸ÄÏ——ASP_NET¡¢XML¡¢web·þÎñÓë.ADO_NET_11030729.rar|6563070|B1CBF4D0032C8D78FB10F5F2AE6C3882|/
ed2k://|file|[ReadFree]_C#ÍøÂçÓ¦Óñà³Ì_11041620.rar|8063056|7044A65903D86BF88BE8AF26D8E02B61|/
ed2k://|file|[ReadFree]_Java.P2P³ÌÐòÉè¼Æ_11052086.rar|8742852| ......
±àÕß°´£ºJavaÄÚ´æÐ¹Â©ÊÇÿ¸öJava³ÌÐòÔ±¶¼»áÓöµ½µÄÎÊÌ⣬³ÌÐòÔÚ±¾µØÔËÐÐÒ»ÇÐÕý³££¬¿ÉÊDz¼Êðµ½Ô¶¶Ë¾Í»á³öÏÖÄÚ´æÎÞÏÞÖÆµÄÔö³¤£¬×îºóϵͳ̱»¾£¬ÄÇôÈç
ºÎ×î¿ì×îºÃµÄ¼ì²â³ÌÐòµÄÎȶ¨ÐÔ£¬·Àֹϵͳ±ÀÅÌ£¬×÷ÕßÓÃ×ÔÒѵÄÇ×Éí¾ÀúÓë¸÷Î»ÍøÓÑ·ÖÏí½â¾öÕâЩÎÊÌâµÄ°ì·¨¡£
×÷ΪInternet×îÁ÷Ðеı ......
¹ØÓÚÏ̵߳IJÙ×÷£¬Òª×¢ÒâÈçϼ¸¸ö·½Ãæ¡£
(1) ·ÀÖ¹¹ý¶àµÄͬ²½
ÈçÉÏËùʾ£¬²»±ØÒªµÄͬ²½³£³£»áÔì³É³ÌÐòÐÔÄܵÄϽµ¡£Òò´Ë£¬Èç¹û³ÌÐòÊǵ¥Ị̈߳¬ÔòÒ»¶¨²»ÒªÊ¹ÓÃͬ²½¡£
(2)
ͬ²½·½·¨¶ø²»ÒªÍ¬²½Õû¸ö´úÂë¶Î
¡¡¡¡¡¡¶Ôij¸ö·½·¨»òº¯Êý½øÐÐͬ²½±È¶Ô ......