当前位置: 首页 > news >正文

【Java学习笔记】注解

注解(Annotation)

引入修饰符:@

一、. 基本介绍

二、 分类


基本注解

一、@Override

实际应用判断某个方法是否重写了父类的方法,若在方法上方添加@Override 注解不报错,则重写

@Override 的源码

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
public @interface Override {
}

二、@Deprecated

@Deprecated 的源码

@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(value={CONSTRUCTOR, FIELD, LOCAL_VARIABLE, METHOD, PACKAGE, PARAMETER, TYPE})
public @interface Deprecated {
}

三、@SuppressWarnings

1. 介绍:这个注解的作用是忽略一些警告

使用方法:@SuppressWarnings(“传入一个类型”)

2. 技巧:生成 @SuppressWarnings 时,不用背,直接点击左侧的黄色提示,就可以选择(注意可以指定生成的位置)

3. 所有类型一览表

属性说明
all抑制所有警告
boxing抑制与封装/拆装作业相关的警告
cast抑制与强制转型作业相关的警告
dep-ann抑制与淘汰注释相关的警告
deprecation抑制与淘汰的相关警告
fallthrough抑制与 switch 陈述式中遗漏 break 相关的警告
finally抑制与未传回 finally 区块相关的警告
hiding抑制与隐藏变数的区域变数相关的警告
incomplete-switch抑制与 switch 陈述式(enum case)中遗漏项目相关的警告
javadoc抑制与 javadoc 相关的警告
nls抑制与非 nls 字串文字相关的警告
null抑制与空值分析相关的警告
rawtypes抑制与使用 raw 类型相关的警告
resource抑制与使用 Closeable 类型的资源相关的警告
restriction抑制与使用不建议或禁止参照相关的警告
serial抑制与可序列化的类别遗漏 serialVersionUID 栏位相关的警告
static-access抑制与静态存取不正确相关的警告
static-method抑制与可能宣告为 static 的方法相关的警告
super抑制与置换方法相关但不含 super 呼叫的警告
synthetic-access抑制与内部类别的存取未最佳化相关的警告
sync-override抑制因为置换同步方法而遗漏同步化的警告
unchecked抑制与未检查的作业相关的警告
unqualified-field-access抑制与栏位存取不合格相关的警告
unused抑制与未用的程式码及停用的程式码相关的警告

4. 常用类型一览表

属性说明
unchecked抑制与未检查的作业相关的警告
rawtypes抑制与使用 raw 类型相关的警告
unused抑制与未用的代码相关的警告
deprecation抑制与使用过时 API 相关的警告
fallthrough抑制 switch 语句中遗漏 break 的警告
serial抑制 Serializable 类缺少 serialVersionUID 警告
all抑制所有警告

5. @SuppressWarnings 的源码

@Target({TYPE, FIELD, METHOD, PARAMETER, CONSTRUCTOR, LOCAL_VARIABLE})
@Retention(RetentionPolicy.SOURCE)
public @interface SuppressWarnings {String[] value();
}

相关文章:

  • 接口安全SOAPOpenAPIRESTful分类特征导入项目联动检测
  • NodeJS全栈开发面试题讲解——P5前端能力(React/Vue + API调用)
  • RabbitMQ-Go 性能分析
  • 【irregular swap】An Examination of Fairness of AI Models for Deepfake Detection
  • Textacy:Python 中的文本数据清理和规范化简介
  • java Map双列集合
  • 【HarmonyOS Next之旅】DevEco Studio使用指南(二十九) -> 开发云数据库
  • Spring MVC参数绑定终极手册:单多参/对象/集合/JSON/文件上传精讲
  • 【Linux】Linux文件系统详解
  • 包管理后续部分
  • Window系统程序加入白名单
  • unix/linux source 命令,在当前的 Shell 会话中读取并执行指定文件中的命令
  • 【GPT入门】第40课 vllm与ollama特性对比,与模型部署
  • Leetcode 3568. Minimum Moves to Clean the Classroom
  • 【云安全】以Aliyun为例聊云厂商服务常见利用手段
  • Java大厂后端技术栈故障排查实战:Spring Boot、Redis、Kafka、JVM典型问题与解决方案
  • Vue3.5 企业级管理系统实战(二十一):菜单权限
  • flask pyinstaller打包exe,出现module not found问题
  • 用mediamtx搭建简易rtmp,rtsp视频服务器
  • FFmpeg学习笔记
  • 微网站 小程序 区别/石家庄seo推广
  • 做网站花多钱/厦门搜索引擎优化
  • 品牌网站建设有什么作用/自己建网站怎么建
  • 北京网站建设制作/站长工具站长
  • 政府网站集约化建设管理/在线排名优化
  • 三亚网站建设/深圳百度推广代理