Java——Annotation注解基本总结(简介、覆写、过期声明、压制警告)

举报
Winter_world 发表于 2021/09/29 00:45:11 2021/09/29
【摘要】 目录 1、Annotation简介 2、@Override 覆写注解 3、@Deprecated 过期声明注解 ​4、@SuppressWarnings 压制警告 5、总结 1、Annotation简介 Annotation(注解)提供了一种新的项目开发结构模式,利用Annotation,可以实现零配置的开发。 对于软...

目录

1、Annotation简介

2、@Override 覆写注解

3、@Deprecated 过期声明注解

​4、@SuppressWarnings 压制警告

5、总结


1、Annotation简介

Annotation(注解)提供了一种新的项目开发结构模式,利用Annotation,可以实现零配置的开发。

对于软件项目开发,经过了以下三个开发阶段:

  • 第一阶段:代码完成期。将所需要的配置信息,直接写死在程序里。这样的程序编写起来最方便,但是不适合于变化,一旦配置发生变化,会导致程序必须进行重新编写。
  • 第二阶段:配置文件期。用配置文件与开发的程序代码进行分离,配置文件中保存需要的基础信息,如IP地址、用户名、密码等,而后在程序运行时根据配置文件的内容进行调整,若进行信息的维护,只需要修改配置文件即可,不需要修改程序代码。但是,这样的配置对于后期的维护很混乱,因为随着项目复杂度的增加,配置文件也太多了。
  • 第三阶段:注解阶段。将所有相关的配置信息写回到程序里,这样供开发者方便维护,但是为了与程序进行有效分离,可以采用特定手段进行,如Annotation就是一种实现分离的手段。这样配置在上,代码在下,易于维护,但是,不好的是,要修改,还是要改代码。

Java中最早只有三个Annotation:@Deprecated、@Override、@SuppressWarnings,而后又增加了许多,且许多第三方的开发工具也又大量的Annotation。

2、@Override 覆写注解

这个注解的功能主要是标识某一个方法为覆写父类的方法。

【举例】:可能存在的问题


  
  1. public class MainActivity extends AppCompatActivity {
  2. @Override
  3. protected void onCreate(Bundle savedInstanceState) {
  4. super.onCreate(savedInstanceState);
  5. System.out.println(new Person());
  6. }
  7. }
  8. class Person{
  9. public String tostring(){ //本意是要进行方法覆写
  10. return "a people";
  11. }
  12. }

以上程序,本意是想Person类中覆写Object类的toString()方法,但是由于自己的失误,字母写错了,而程序编译又不会报错,以为是一个新的方法,所以,若想在程序编译时报错,可以使用注解@Override。

现在的IDE工具,只要进行方法覆写时,都会自动生成此注解。

3、@Deprecated 过期声明注解

指的是声明一个过期的不建议使用的操作方法。这种过期方法的声明,在JDK中是到处可见的,但并不意味着这些方法是错误的,只能说在某一些环境中可能出现问题。


4、@SuppressWarnings 压制警告

利用此注解可以压制警告,压制警告信息不再提示。


  
  1. public class MainActivity extends AppCompatActivity {
  2. @Override
  3. protected void onCreate(Bundle savedInstanceState) {
  4. super.onCreate(savedInstanceState);
  5. @SuppressWarnings("null")
  6. Person per = null;
  7. per.fun();
  8. }
  9. }
  10. class Person<T>{
  11. @Deprecated
  12. public void fun(){
  13. }
  14. }

5、总结

以上三个注解都是Java最基础的注解,把这些标记记一下就可以,IDE工具可以搞定。

 

作于202005142100,已归档

———————————————————————————————————

本文为博主原创文章,转载请注明出处!

若本文对您有帮助,轻抬您发财的小手,关注/评论/点赞/收藏,就是对我最大的支持!

祝君升职加薪,鹏程万里!

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

原文链接:winter.blog.csdn.net/article/details/106127850

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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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