• java 中的注解


    ---恢复内容开始---

    1.什么是注解

      注解(也称元数据)为我们在代码中添加信息提供了一种形式化方法,我们可以在编程时非常方便的使用这些数据。

    2.Java中内置的三大标准注解

      @Override 表示当前的方法覆盖父类(超类)的方法。如果不小心拼写错误或者方法签名跟覆盖的方法对不上时,编译器会发出错误提示。

      @Deprecated  使用此注解表示该方法已过期,但是也可以使用,在编译时会发出告警信息。

       @SuppressWarnings 关闭当前编译器的告警信息。

         另外还有四中元注解专门负责新注解的创建:

       

     3.定义注解及使用

    a.定义注解

    import java.lang.annotation.ElementType;
    import java.lang.annotation.Retention;
    import java.lang.annotation.RetentionPolicy;
    import java.lang.annotation.Target;

    /**
    * 测试注解
    * Created by qiqi on 2019/9/4 16:51
    */
    @Target(ElementType.METHOD)
    @Retention(RetentionPolicy.RUNTIME)
    public @interface TestCase {
    public int id();
    public String description() default "no description";
    }

    b.使用注解
    /**
    * 注解实例
    * Created by qiqi on 2019/9/4 16:54
    */
    public class PasswordUtils {

    @TestCase(id = 14, description = "这是描述")
    public boolean validPassword() {
    return true;
    }
    }
    c.使用Java中的反射来定义注解处理器
    import java.lang.reflect.Method;

    /**
    * Created by qiqi on 2019/9/4 16:57
    */
    public class AnnotaionTest {

    public static void main(String[] args) {
    test(PasswordUtils.class);
    }

    public static void test(Class<?> cl) {
    for (Method m : cl.getDeclaredMethods()) {
    TestCase tc = m.getAnnotation(TestCase.class);
    if (null != tc) {
    System.out.println("这是测试用例 id:"+tc.id()+" 说明:"+ tc.description());
    }
    }
    }
    }

    d,执行结果

    这是测试用例 id:14 说明:这是描述
    
    
  • 相关阅读:
    kafka学习笔记:知识点整理
    java操作hbase 增删改查
    json往前台送数据中文乱码
    17年数据结构笔记
    设置MYSQL数据库编码为UTF-8
    c++的 struct和class
    算法之arrays and strings
    对于快速排序的理解
    sql杂记
    Spring搭建练习遇到的坑
  • 原文地址:https://www.cnblogs.com/dakewang/p/11459845.html
Copyright © 2020-2023  润新知