• Java 之 注解概述介绍


    一、注解介绍

      注解概念:注解是说明程序的,给计算机看的。

      注释概念:用文字描述程序的,给程序员看的。

      注解定义:注解(Annotation),也叫元数据。一种代码级别的说明。它是 JDK1.5 及以后版本引入的一个特效,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等前面,用来对这些元素进行说明,注释。

      概念描述

      •  JDk 1.5之后的新特性
      •     说明程序的
      •     使用注解:@注解名称

      注解作用分类

      •  编写文档:通过代码里标识的注解生成文档【生成文档 doc 文档】

          Demo:编写一个类,然后通过 javadoc  文件名.java  来生成 doc文档

     1 /**
     2  * 注解javadoc演示
     3  *
     4  * @author ks
     5  * @version 1.0
     6  * @since 1.5
     7  */
     8 public class AnnoDemo1 {
     9 
    10     /**
    11      * 计算两数的和
    12      * @param a 整数
    13      * @param b 整数
    14      * @return 两数的和
    15      */
    16     public int add(int a, int b ){
    17         return a + b;
    18     }
    19 }
      •     代码分析:通过代码里标识的注解对代码进行分析【使用反射】
      •     编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查【Override】

    二、JDK 中预定义注解

      JDk 中预定义的三个最基本的注解注解:

      •  @Override:检测被该注解标注的方法是否是继承自父类(接口)的,它只能用在方法上面,会让编译器对这个方法进行格式检查,是否满足重写的要求。
      •  @Deprecated:该注解标注的内容,表示已过时
      •     @SuppressWarnings:压制警告,一般传递参数 all,压制所有的警告(@SuppressWarnings("all"))

       Demo :

     1 /**
     2  *  内置注解
     3  */
     4 @SuppressWarnings("all")   // 表示压制所有的警告,可以作用与类与方法
     5 public class AnnoDemo {
     6 
     7     @Override        // 表示方法重写
     8     public String toString() {
     9         return super.toString();
    10     }
    11 
    12     @Deprecated      // 表示方法已经过时了,但是不能删除,为了向下兼容
    13     public void show1() {
    14         // 有缺陷
    15     }
    16 
    17     public void show2() {
    18         // 替代 show1方法
    19     }
    20 
    21     public void demo() {
    22         show1();
    23     }
    24 }

    三、与文档注释相关的注解

      1、文档注释

    /**
    文档注释
    */

      2、常见的文档注解

    @author:作者

    @since:从xx版本加入的

    @see:另请参考

    @param:形参

    @return:返回值

    @throws或@exception:异常

    四、JUnit 相关的注解

      1、@Test :表示它是一个单元测试方法

         这个方法需要是: 

    public void xxx() {}

      2、@Before:表示在每一个单元测试方法之前执行

         这个方法需要是:

    public void xxx() {}

      3、@After:表示在每一个单元测试方法之后执行

         这个方法需要是:

    public void xxx() {}

      4、@BeforeClass:表示在类初始化阶段执行,而且只执行一次

        这个方法需要是:

    public static void xxx() {}

      5、@AfterClass:表示在类的“卸载”阶段执行,而且只执行一次

        这个方法需要是:

    public static void xxx(){}
    

      

     

  • 相关阅读:
    算法练习(16)-水平翻转一颗二叉树
    算法练习(15)-设计1个二叉树的序列化与反序列化实现?
    算法练习(14)-二叉树中2个节点的最近公共祖先?
    算法练习(13)-打印纸条对折的折痕类型(凹痕?凸痕?)
    算法练习(12)-二叉树的递归套路
    算法练习(11)-二叉树的各种遍历
    算法练习(10)-求2个(可能有环的)单链表的相交节点
    算法练习(9)-复杂带随机指针的单链表
    mac升级后第三方下载程序无法打开cannot be opened because the developer cannot be verified的解决办法
    算法练习(8)-判断单链表是否回文链表
  • 原文地址:https://www.cnblogs.com/niujifei/p/11565127.html
Copyright © 2020-2023  润新知