Java 系统注解

为什么用?:

好处:使用系统定义的注解,可以在编译时对程序进行检查。

注解用在包、类、字段、方法、局部变量、方法参数等的前面,对这些元素进行说明和注释。

@Override

@Override用来修饰一个方法,这个方法必须是对父类方法的重写。如果一个方法没有重写父类的方法,使用这个注解时便提起将提示错误。

在子类中重写父类或接口的方法时,建议使用这个注解。

//不使用注解的情况下
package test;public class SuperOverride {public void method() {System.out.println("父类方法");}
}package test;
//需要重写父类的method方法,但是子类写成Method了,
//此时编译器就不会报错,你就没法发现:子类没有重写父类的method方法。public class SubOverride extends SuperOverride{public void Method() {System.out.println("子类方法");}
}package test;public class OverrideTest {public static void main(String args[]) {SuperOverride sover = new SubOverride();sover.method();//输出:父类方法}
}

不使用注解@Override的情况下,需要重写父类的method方法,但是子类写成Method了,此时编译器就不会报错,你就没法发现:子类没有重写父类的method方法。编译器就不会报错。

但是使用注解@Override的情况下:子类本来是要重写父类的method方法,但是由于程序员的疏忽,把method写成Method了,此时编译器就会报错,这样的话,就减少了我们写出bug的几率。

@Deprecated

@Deprecated可以用来注解不再使用以及过时的类、方法、属性。如果代码使用了Deprecated注解的类、方法、属性,编译器会给出警告。

使用@Deprecated建议使用对应的@deprecated JavaDoc符号说明这个类、方法、属性替代方案及原因。

@Deprecated
/**
@deprecated 这个类有缺陷,使用新的NewDeprecatedTest类替代他
*/
public class DeprecatedTest{....//省略
}

@SuppressWarnings

抑制编译器生成警告信息。它修饰的元素为类、方法、方法参数、属性、局部变量。

当方法调用过时的方法或进行不安全类型转换时,编译器会生成警告,此时可以为这个方法增加@SuppressWarnings注解。

Java基础 系统注解 @Override @Deprecated @SuppressWarnings 使用的方法及原因相关推荐

  1. Java SE 注解 @Override @Deprecated @SuppressWarnings

    注解的理解 1) 注解 (Annotation) 也被称为元数据 (Metadata) ,用于修饰解释 包.类.方法.属性.构造器.局部变量等数据信息. 2) 和注释一样,注解不影响程序逻辑,但注解可 ...

  2. JAVA基础,注解反射机制

    文章目录 注解 (非常重要) 什么是注解 基本注解 @Override @Deprecated @SuppressWarnings @SafeVarargs @FunctionalInterface ...

  3. IDEA中实现接口时注解@Override报错的解决方法

    IDEA中实现接口时注解@Override报错的解决方法 参考文章: (1)IDEA中实现接口时注解@Override报错的解决方法 (2)https://www.cnblogs.com/liulao ...

  4. Spring的aspect无法拦截有注解的jdk代理的接口方法的原因

    Spring的aspect无法拦截有注解的jdk代理的接口方法的原因 我github博客地址 背景 项目A中需要多数据源的实现,比如UserDao.getAllUserList() 需要从readon ...

  5. Spring注解事务不支持 protect private 方法的原因

    Spring注解事务不支持 protect private 方法的原因 @Data @EqualsAndHashCode(callSuper = false) @Accessors(chain = t ...

  6. Java基础加强-(注解,动态代理,类加载器,servlet3.0新特性)

    1.   Annotation注解 1.1.  Annotation概述 Annotation是JDK 5.0以后提供对元数据的支持,可以在编译.加载和运行时被读取,并执行相应的处理.所谓Annota ...

  7. Java基础进阶注解

    注解,或者叫做注释类型,英文单词是:Annotation 注解Annotation是一种引用数据类型.编译之后也是生成xxx.class文件. 怎么自定义注解呢?语法格式? [修饰符列表] @inte ...

  8. win7冒险岛java,win7系统玩不了冒险岛的解决方法

    今天和大家分享一下win7系统玩不了冒险岛问题的解决方法,在使用win7系统的过程中经常不知道如何去解决win7系统玩不了冒险岛的问题,有什么好的办法去解决win7系统玩不了冒险岛呢?小编教你只需要1 ...

  9. java基础系统复习

    时隔4个月,终于完成了一些重要事情,又有时间学习JAVA了,但基础有些遗忘,复习一下吧,再进行下阶段的学习 不管结果,学习就好 Java重要特点: 1.Java语言是面向对象的(oop) 2. Jav ...

最新文章

  1. nfs服务器与客户端配置
  2. python代码质量检查工具_python代码检查工具pylint 让你的python更规范
  3. Python基础之:数字字符串和列表
  4. 一个程序猿如何自学双截棍,避免各种编程职业病的发生?
  5. Go-Mutex互斥量
  6. 2G的完整形式是什么?
  7. php面向对象之get和set方法
  8. 帆软报表学习笔记②——行转列
  9. cpt怎么转换成HTML,Excel直接转成模板cpt
  10. 开发核酸检测软件方案书
  11. 细说 MySQL登录
  12. angular--安全导航操作符 ( ?. )、非空断言操作符(!) (实用)
  13. one class classification
  14. Signal and SIGIO
  15. Python模拟post提交表单数据 ——某二手车网站回拨电话的分析与利用
  16. 功放限幅保护_【干货】如何利用限幅器保护音箱√
  17. 专访架构师周爱民:谈企业软件架构设计[转]
  18. Flutter Hero 实现径向变换动画 — 圆形变成矩形的转场动画
  19. 头条号音频项目,轻松日入200+
  20. Docker方式安装showdoc

热门文章

  1. vb读出二进制文件,合并两个文件
  2. python爬虫 单线程的多任务异步协程
  3. Linux(CentOS 7)安装docker
  4. Android木马分析实验,Android木马简介与分析
  5. 为什么要学python语言、学完有什么好处_学编程为什么首选Python?学完Python的优势有哪些?...
  6. 删除计算机360云盘,win7系统怎么取消电脑右键保存到360云盘选项
  7. safari浏览器横屏怎么设置_如何避免苹果safari自带浏览器“跟踪”你的信息!
  8. 连接linux工具Mtr,Linux常用网络工具:路由扫描之mtr
  9. elementui分页组件按钮样式修改_Vue使用Elementui修改默认最快方法!
  10. 西工大计算机学院交流,2017西工大计算机交流+精贵资料