java annotationʹÓÃ
annotationʹÓÃ
2010Äê2ÔÂ11ÈÕ ÁɹúÅÖÅÖ
½ñÌì¿´annotation¹æ·¶£¬ÌؼǼÈçÏ£¬ÒÔ±ãÒÔºó²Î¿¼£¬Ò²¹©³õѧµÄÅóÓÑÃÇÒ»¸ö¿ÉÔËÐа¸Àý£¬Óв»Í×Ö®´¦£¬ÇëÖ¸ÕýÐ޸ģ»ÁíÍâ£¬ÌØ±ðÉùÃ÷£¬Èç¹û×ªÔØ»òÕßÒýÓÃÇë×¢Ã÷³ö´¦¡£
½éÉÜ
AnnotationÊÇjava5ÐÂÌí¼ÓµÄÌØÐÔ£¬ annotationÊÇÒ»ÖÖÔªÊý¾ÝMetadata£¬ÆäÓÐÈçÏÂÌØµã£º
² Ìí¼Óɾ³ýannotation²»ÄܶԳÌÐòÔËÐвúÉúÈκÎÓ°Ïì
² ¶ÔIDE¿ª·¢»·¾³ÒÔ¼°library²úÉúÓ°Ïì
² ͨ¹ýreflect¿ÉÒÔÔÚsource files, class filesÒÔ¼°jvmÔËÐÐʱµÃµ½annotationÐÅÏ¢
² ¶Ôjavadoc¹¤¾ßµÄÒ»ÖÖ²¹³ä£¬ÔÚ²úÉúÎĵµµÄʱºòʹÓÃjavadoc£¬ÆäËüÇé¿öÏ¿ÉÒÔʹÓÃannotation
² ÓÉÓÚannotationÊÇÔÚjavaÀàÖеÈÓÚºÍʹÓ㬼õÉÙÁËjava³ÌÐòԱѧϰµÄÇúÏߣ¬¼õÉÙÁ˳ÌÐòԱѧϰµÄ¸ºµ££¬ÓпÉÄÜÔÚÒÔºóÒ»¶Îʱ¼äÄÚÓпÉÄÜÈ¡´úÆäËüÃèÊöÔªÊý¾ÝµÄÐÎʽ£¬±ÈÈçdtd
¶¨Òå
Annotation¶¨Òå
ºÍÆÕͨµÄinterface¶¨Ò弸ºõÒ»Ñù£¬¾ÍÔÚinterfaceǰ¼ÓÒ»¸ö@·ûºÅ£¬²»ÖªµÀsunΪɶ²»ÅªÒ»¸öannotationÖ®ÀàµÄ¹Ø¼ü×ÖÀ´´úÌæ@interface£¬¸Ð¾õºÜ±ðŤ£¬ÓÐÖªµÀÏêÇéµÄÅóÓÑÇë¸æËßÎÒÒ»Éù£¬ÀýÈ綨ÒåÈçÏ£º
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface MyAnnotation {
String myvalue();
}
Annotation¶¨Òå×¢Ò⣺
1¡¢ ÐÞÊηûÖ»ÄÜΪpublic »òÕßabstract
2¡¢ @interface²»ÄܰÑ@·ûºÅͬinterface·Ö¿ª
3¡¢ ÓÐÁ½¸öÖØÒªµÄannotationÐèҪ˵Ã÷Target¡¢Retention£¬ÆäÖµ¾ßÌå²Î¿¼¡¶ÏµÍ³annotation²¿·Ö¡·
ÊôÐÔ·½·¨µÄ¶¨Òå
±ÈÈçÉÏÃæMyAnnotation¾Í¶¨ÒåÁËÒ»¸ömyvalue·½·¨£¨¼´annotationµÄÒ»¸öÊôÐÔ£©£¬Ò»¸öannotationÖпÉÒÔ¶¨Òå¶à¸ö·½·¨¡£
¶¨Òå·½·¨×¢Ò⣺
1¡¢ ²»ÄÜÓÐÈκβÎÊý£¬·ñÔò±¨Annotation attributes cannot have parameters
2¡¢ ²»ÄÜÅ×ÈκÎÒì³££¬·ñÔò±¨Syntax error on token "throws", default expected
3¡¢ ·µ»ØÀàÐÍÖ»ÄÜΪprimitives, String, Class, enums, annotations, ÒÔ¼°Ç°ÃæÊý×éÀàÐÍ£¬±ÈÈç°ÑÉÏÃæµÄmyvalue()·½·¨µÄ·µ»Ø¸ÄΪObject£¬±¨Invalid type Object for the annotation attribute M
Ïà¹ØÎĵµ£º
ʹÓÃÒ»ÖÖ³ÌÐòÉè¼ÆÓïÑÔ£¬¾ÍÓ¦¸ÃרҵµØÊ¹ÓÃËü¡£±¾ÎÄÊÇIBM developerWorksÖеÄһƪÎÄÕ£¬ËüÃèÊöµÄ¶¼ÊÇJava±à³ÌÖеÄϸ½ÚÎÊÌ⣬¾¡¹ÜÈç´Ë£¬»¹ÊÇÖµµÃ´ó¼ÒÍæÎ¶Ò»·¬£¬ÖÁÉÙÎÒ×÷ΪһÃûÀÏÄñ»¹ÊÇ´ÓÖÐÊÜÒæÁË¡£(2010.02.09×îºó¸üÐÂ)
ѧϰһÖÖеijÌÐòÉè¼ÆÓïÑÔ±ÈѧϰһÖÖеĿÚÍ·ÓïÑÔÒªÈÝÒס£µ«ÊÇ£¬ÔÚÕâÁ½ÖÖŬÁ¦ÖУ¬¶¼Ð ......
JAVA·´Éä»úÖÆ
JAVA·´Éä»úÖÆÊÇÔÚÔËÐÐ״̬ÖУ¬¶ÔÓÚÈÎÒâÒ»¸öÀ࣬¶¼Äܹ»ÖªµÀÕâ¸öÀàµÄËùÓÐÊôÐԺͷ½·¨£»¶ÔÓÚÈÎÒâÒ»¸ö¶ÔÏ󣬶¼Äܹ»µ÷ÓÃËüµÄÈÎÒâÒ»¸ö·½·¨£»ÕâÖÖ¶¯Ì¬»ñÈ¡µÄÐÅÏ¢ÒÔ¼°¶¯Ì¬µ÷ÓöÔÏóµÄ·½·¨µÄ¹¦ÄܳÆÎªjavaÓïÑԵķ´Éä»úÖÆ¡£
Java·´Éä»úÖÆÖ÷ÒªÌṩÁËÒÔϹ¦ÄÜ£º ÔÚÔËÐÐʱÅжÏÈÎÒâÒ»¸ö¶ÔÏóËùÊô ......
È«ÆÁ¶Àռģʽ
¾³£Ê¹ÓÃDirectX APIµÄ³ÌÐòÔ±¿ÉÄܶÔÈ«ÆÁ¶ÀռģʽÒѾºÜÊìϤÁË ¡£ËüÔÊÐí³ÌÐòԱͨ¹ýÐü¹Ò²Ù×÷ϵͳÀ´Ö±½ÓÔÚÆÁÄ»ÉϽøÐлæÖÆ¡£ÔÚ´«Í³µÄJava GUI ³ÌÐòÖУ¬ AWT ͨ¹ýʼþ·ÖÅÉÏ̺߳ÍÔÚÊʵ±µÄʱºòµ÷ÓÃ×é¼þµÄpaint()·½·¨À´´«ËÍÀ´×Ô²Ù×÷ϵͳµÄpaintʼþ¡£ÔÚÈ«ÆÁ¶ÀռģʽӦÓÃÖÐÄã¿ÉÒÔͨ¹ý³ÌÐò½øÐлæÖÆ¡£ ÁíÍâ ......
public class Calendar {
/**
* Ö±½ÓµÄ¿ÉÒԲ鿴Ч¹û
* @param args
*/
public static void main(String[] args) {
int year=input.nextInt();//Äê
int month=input.nextInt();//ÔÂ
int yearday=0;//Äê×ÜÌìÊý
//¼ ......
ËäÈ»ºÜÉÙÓõ½Í¬²½£¬³öÓÚ¸öÈËÐËȤ×ÔѧÁËһϡ£ÏÖ¶ÔJAVAÖеÄͬ²½ÊÕ¼¯Ñ§Ï°µÄ¶«Î÷×ܽáһϣ¬ÈÃ×Ô¼º¼¼ÊõµÄÌõÀí»¯£¬Äܹ»³ÁµíÏÂÀ´¡£
ͬ²½¾ÍÊÇ´®ÐÐʹÓÃһЩ×ÊÔ´.
JAVAÖÐsynchronized¹Ø¼ü×ÖÄܹ»×÷Ϊº¯ÊýµÄÐÞÊηû£¬Ò²¿É×÷Ϊº¯ÊýÄÚµÄÓï¾ä£¬Ò²¾ÍÊÇÆ½Ê±ËµµÄͬ²½·½·¨ºÍͬ²½Óï¾ä¿é¡£¼ÙÈçÔÙϸµÄ·ÖÀ࣬synchronized¿É×÷ÓÃÓÚinstance ......