【Java 注解】注解简介及作用

举报
韩曙亮 发表于 2022/01/11 01:17:53 2022/01/11
【摘要】 文章目录 一、注解简介二、注解作用三、Java 预定义注解 一、注解简介 注释 是使用文字描述程序 , 是 给开发和维护程序的人员看的 , 编译器在编译时会将注释删...





一、注解简介



注释 是使用文字描述程序 , 是 给开发和维护程序的人员看的 , 编译器在编译时会将注释删除 ;

注解 也是用于 描述程序 的 , 但是注解是 给 计算机 准确的说是 编译器 看的 , 让 编译器 执行一些操作 ;


注解对开发环境的要求 : JDK 1.5 1.5 1.5 之后的版本 ;


注解在 Java 中的地位 : Java 源码文件分为 4 4 4 种类型 , 接口 , , 枚举 , 注解 ; 由此可见 , 注解在 Java 语言中占有者重要的低位 ;


注解作用位置 : 包 , 类 , 成员变量 , 方法 , 方法参数 , 局部变量 , 6 6 6 个作用位置 ;





二、注解作用



注解的三种作用 :

① 编写文档 : 通过注解 , 生成 Java API 文档 , 通过抽取 Java 代码文档注释生成文档 ;

② 代码分析 : 通过在相应位置的注解对代码进行分析 , 使用反射技术, 抽取注解 ;

③ 编译检查 : 编译器在编译时进行的基本检查 , 如判断方法参数是否为空 , 判断重写方法是否合法 ;


编写文档示例 :/** */ 文档注释中 , 使用 @author 注解表示作者 , 使用哪个 @version 表示版本 , 使用 @since 表示 java 版本 ; 方法中使用文档注释 , 会自动添加参数描述注解 @param 和 返回值描述注解 @return ; 这些描述注解在生成 Java API 文档时 , 会被抽取出来 , 用于生成文档 ;

/**
 * 注解生成文档
 *
 * @author hsl
 * @version  0.1
 * @since 1.5
 */
public class Student {
    /**
     * 构造函数
     * @param name 参数一
     * @param age 参数二
     */
    Student(String name, int age){

    }
}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

编译检查示例 : 最常见的注解 @Override , 在重写父类方法时 , 方法上都有 @Override 注解 , 该注解的作用就是用于编译检查 , 编译时检查该方法是否是覆盖的父类方法 , 如果不是 , 编译中途失败退出 ;

    @Override
    public String toString() {
        return super.toString();
    }

  
 
  • 1
  • 2
  • 3
  • 4

代码检查 , 生成文档 , 这两种方式是系统定义好的 , 只能使用 , 不能修改 ;

对于开发者来说 , 注解的重点就是进行 代码分析 ;





三、Java 预定义注解



在 Java 语言中 , JDK 预定义了一些注解 ;

@Override 注解 : 编译时检查被该注解 标注 的方法是否是父类的 方法 / 接口 ;

@Deprecated 注解 : 表示被该注解标注的内容已经过时 ; 建议使用新版本的方案 ; 参考 util.Date 类 , 有很多过时的方法 ;

@SuppressWarnings : 忽略警告 ; @SuppressWarnings("all") 忽略所有警告 ;

文章来源: hanshuliang.blog.csdn.net,作者:韩曙亮,版权归原作者所有,如需转载,请联系作者。

原文链接:hanshuliang.blog.csdn.net/article/details/116895067

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。