Java注解(Annotation)详解(一)——概述及JDK自带注解

来源:互联网 发布:什么是编程范式 编辑:程序博客网 时间:2024/06/03 15:54
转 http://blog.csdn.net/zen99t/article/details/49506919>

(一)概述及JDK自带注解

最近在学习Java注解,看了慕课网的视视频后感觉明白了很多,但我相信一段时间后肯定会忘记,所以做做笔记。

1.何为注解?

  概念:注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。

         如下所示,我们在编程中经常遇到的@Override等等都是注解。

2.注解的分类

2.1 按照运行机制  (往后会讲)
源码注解:
       注解只在源码中存在,编译成.class文件就不存在了。
编译时注解:
       注解在源码和.class文件中都存在。(例如:JDK的三个注解)
运行时注解:
      在运行阶段还起作用,甚至会影响运行逻辑的注解。
2.2 按照来源分
               来自JDK的注解:上面图片的三个@Override  @Deprecated  @SuppressWarning,接下来会介绍
               来自第三方的注解:比如Spring框架、Mybatis框架的注解等等,以后再说吧
               我们自己定义的注解:往后会详细地讲

3.JDK自带注解

@Override 表示当前方法覆盖了父类的方法
@Deprecation 表示方法已经过时,方法上有横线,使用时会有警告。
@SuppviseWarnings 表示关闭一些警告信息(通知java编译器忽略特定的编译警告)


直接上代码讲解吧,定义一个接口Animal:


然后定义一个Bird类实现该接口,此时提示需要实现Animal接口的方法:

点击Add unimplemented methods后会自定实现接口方法,此时方法上方出现@Override注解,这是一个标识注解,表示当前方法覆盖了父类的方法。


我们可以再创建一个AngryBird类继承Bird,覆盖父类的run()方法:


最后编写一个Test类测试一下,出现警告:run()方法已经过时。为什么呢?因为我在定义Animal接口时,在run()方法上添加了注解@Deprecation,表示方法已经过时,方法上有横线,使用时会有警告。


当然我们忽略警告,直接运行也是可以的,但如果有强迫症的同学呢,可以增加@SuppressWarnings来去掉警告:


好,最后运行结果为:


开始写博客记录笔记,方便以后自己复习。往后继续加油!
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 五官小但是脸大怎么办 脸太小搭五官也不好看怎么办 后颈头发出汗多怎么办 中分短发遮眼睛怎么办 电脑重启不了怎么办 电脑系统文件损坏怎么办 qt程序异常结束怎么办 电脑应用程序发生异常怎么办 ie代理配置错误怎么办 comsol残差太大怎么办 创建ud分区失败怎么办 肺活量vc异常该怎么办 pr音频mme错误怎么办 vs的mysql打不开怎么办 电脑表格文档打不开怎么办 cdr文件没保存怎么办 cdr突然未响应怎么办 qq发文件过大怎么办 wps打不开文件了怎么办 cad显示未响应怎么办 桌面快捷方式删了怎么办 exe文件怎么打不开怎么办 表格打不开了怎么办啊 win10装xp蓝屏怎么办 c盘无法格式化怎么办 吃鸡一直加载怎么办 终结者2读条慢怎么办 excel运行很慢怎么办 手机右键没反应怎么办 电脑一直在加载怎么办 win10开机卡logo怎么办 电脑右下角图标打不开怎么办 钥匙打不开锁怎么办 门关了打不开怎么办 门关住了打不开怎么办 系统打不开exe文件怎么办 笔记本电脑打不开exe文件怎么办 80注册itms失败怎么办 手机游戏两边有黑边怎么办 飞车改装错了怎么办 qq飞车昵称重复怎么办