读书人

引语入门实例

发布时间: 2012-06-30 17:20:12 作者: rapoo

注解入门实例

package com.csair.anto;import java.lang.reflect.Method;public class RunAnto {/* * 被注解的三个方法 */@Student(userName = "william", address = "广东省东莞市")public void method_1() {}@Student(userName = "媛媛", address = "")public void method_2() {}@Student(address = "北京市")public void method_3() {}/* * 解析注解,将RunAnto类 所有被注解方法 的信息打印出来 */public static void main(String[] args) {Method[] methods = RunAnto.class.getDeclaredMethods();for(Method method : methods){boolean hasAnnotation = method.isAnnotationPresent(Student.class);if(hasAnnotation){Student annotation = method.getAnnotation(Student.class);System.out.println(method.getName() + " " + annotation.userName() + " " +annotation.address());}}}}                                                                                      

?

package com.csair.anto;import java.lang.annotation.Documented;import java.lang.annotation.ElementType;import java.lang.annotation.Inherited;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation.Target;@Target(ElementType.METHOD)   @Retention(RetentionPolicy.RUNTIME)   @Documented  @Inherited  public @interface Student {String userName() default "admin";String address();}

?

读书人网 >软件架构设计

热点推荐