zoukankan      html  css  js  c++  java
  • Java解析注解

    package com.itbuluoge.anno;
    
    import java.lang.reflect.Method;
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.List;
    
    public class Test {
    
    	public static void trackUseCases(List<Integer> useCases,Class<?

    > cl) { for(Method m:cl.getDeclaredMethods()) { UseCase uc=m.getAnnotation(UseCase.class); if(uc!=null) { System.out.println("FOUND:"+uc.id()+" "+uc.description()); } } for(int i:useCases) { System.out.println("Warning.."+i); } } public static void Case(Class<?> cl) { for(Method m:cl.getDeclaredMethods()) { UseCase uc=m.getAnnotation(UseCase.class); if(uc!=null) { System.out.println("FOUND:"+uc.id()+" "+uc.description()); } } } /** * @param args */ public static void main(String[] args) { //List<Integer> useCases=new ArrayList<Integer>(); //Collections.addAll(useCases, 41,42); //trackUseCases(useCases,Testable.class); Case(Testable.class); } }


    package com.itbuluoge.anno;
    
    import java.lang.annotation.Documented;
    import java.lang.annotation.ElementType;
    import java.lang.annotation.Retention;
    import java.lang.annotation.RetentionPolicy;
    import java.lang.annotation.Target;
    
    import org.junit.Test;
    
    @Target(ElementType.METHOD)
    @Retention(RetentionPolicy.RUNTIME)
    @Documented
    @interface UseCase
    {
    	public int id();
    	public String description() default "no des";
    }
    
    public class Testable {
    
    	@UseCase(id=19,description="中国人")
    	public void say()
    	{
    		
    	}
    	
    	@UseCase(id=19)
    	public void listen()
    	{
    		
    	}
    }
    



    输出结果


  • 相关阅读:
    (转)两千行PHP学习笔记
    PHP语言 -- 基础
    数据库-T-SQL 语句-高级查询
    数据库-T-SQL 语句-简单查询
    数据库-T-SQL 语句-创建表,删除表,CRUD操作的添加数据,修改数据,删除数据
    PHP 数组
    PHP函数
    PhP 基础
    无缝循环
    l两张图片轮播
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/7000600.html
Copyright © 2011-2022 走看看