黑马程序员技术交流社区

标题: 关于 注解的问题 [打印本页]

作者: 黄泉    时间: 2014-7-23 17:17
标题: 关于 注解的问题
  1. import java.lang.annotation.*;


  2. @NewAnnotation({1,2,3,4,5})
  3. class AnnotationTest
  4. {
  5.        
  6.         //@NewAnnotation(value = "你不好" /*, lamp = EnumTest.L*/ , annotationAttr = @EleAnnotation("李四"))
  7.         public static void main(String[] args)
  8.         {
  9.                 if(AnnotationTest.class.isAnnotationPresent(NewAnnotation.class))
  10.                 {
  11.                         NewAnnotation annotation = (NewAnnotation)AnnotationTest.class.getAnnotation(NewAnnotation.class);
  12.                         //System.out.println(annotation.value());
  13.                         //System.out.println(annotation.arrayAttr().length);
  14.                         //System.out.println(annotation.printClass());
  15.                 }
  16.         }
  17. }

  18. @Retention(RetentionPolicy.RUNTIME)
  19. @Target({ElementType.TYPE , ElementType.METHOD })
  20. @interface NewAnnotation
  21. {
  22.         //String value() default "你好";
  23.         String[] arrayAttr();
  24.         //EnumTest lamp() default EnumTest.H;
  25.         //EleAnnotation annotationAttr() ;
  26.         //Class printClass() default String.class;
  27. }

  28. @interface EleAnnotation
  29. {
  30.         String value();
  31. }

复制代码


不是只有一个注解的时候可以省略方法吗? 为什么不可以。。。 在尝试的时候,只有value()这个方法才能省略!

作者: 黄泉    时间: 2014-7-23 17:18
数组类型发错了!是int[]类型的数组。错误提示还是一样的、、、
作者: 黄泉    时间: 2014-7-25 21:38
renne a   




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2