java注解

概述

注解,Annotation,JDK5.0 提出, 增加了对元数据(MetaData)的支持

注解,是代码里的 特殊标记,是添加到java代码中的元数据

可以修饰 类、方法、变量、参数 ,此时只是增加个标记

解析(用反射方式)注解时,才会增加额外的功能

可以在 编译、类加载、运行 时读取、进行相应处理

  • Java 标注可以通过 反射 获取标注内容。
  • 支持 自定义 注解

spring、springboot、mybatis等知名框架,都支持注解开发,可以极大的简化开发

一句话理解

注解可以 修饰 类、方法、变量、参数 ,解析(用反射方式)注解时,会增加额外的功能,目的是:简化开发

使用

语法格式:

  • @注解名

  • @注解名()

  • @注解名(参数)

使用位置

可以修饰 类、方法、变量、参数

作用

编译检查

编译器能够实现基本的编译检查。java已经定义好

检查该方法是否覆盖父类的方法,如下图:

加上 @Override 注解后,当方法不是覆盖父类的方法时,会提示错误

编写文档

通过注解更好的生成javadoc文档。java已经定义好

常见注解:

例子

参见:https://www.malaoshi.top/show_1IX3jUzfRKq.html

代码分析

通过注解对代码进行分析(使用反射)。可自定义注解

在springboot、mybatis等框架中,几乎都是注解

java内置的注解

@Deprecated

可声明类、方法
表示该类、方法废弃,不推荐使用,使用时,ide会有删除线提示

例子 :

查看 java.util.Date 类 ,很多方法都废弃了,就是通过该注解实现的,如下:

@Deprecated
public Date(int year, int month, int date) {
    this(year, month, date, 0, 0, 0);
}

使用该方法时,ide会有删除线提示,如下图:

@SuppressWarnings(“all”)

可声明类、方法
该类、方法使用了不推荐的代码,不会提示警告信息。

参数:

  • deprecation,使用了过时的类或方法时的警告
  • unchecked,执行了未检查的转换时的警告
  • fallthrough,当 switch 程序块直接通往下一种情况而没有 break 时的警告
  • path,在类路径、源文件路径等中有不存在的路径时的警告
  • serial,当在可序列化的类上缺少serialVersionUID 定义时的警告
  • finally ,任何 finally 子句不能正常完成时的警告
  • all,关于以上所有情况的警告
例子 :

如下图,使用了废弃的方法,但没有提示警告信息

https://baike.baidu.com/item/Java%20%E6%B3%A8%E8%A7%A3/4404368


原文出处:/show_1EF4PM1At3G.html