java注解
程序员文章站
2022-06-17 13:21:29
...
注解: 也称元数据
注解类型的主要目的是,以标准化和结构化的方式来表示信息
1、注解采用能够被Java编译器进行检查、验证的格式,存储有关程序的额外信息
2、通过使用注解,可以将这些元数据保存在Java源代码中
优点:
1、附属文件的自动生成,例如部署描述符或bean信息类
2、测试、日志、事物语义等代码的自动生成
内置注解:
指Java语言内部已定义好的注解,可直接使用Java预定义的三种标准注解 (java.lang包中)、四种元注解 (java.lang.annotation包中)
三种标准注解:@Override
表示当前的方法定义将重写父类中的方法,如果不小心拼写错误,或者签名
对不上重写的方法,编译器就会发出错误提示
只能用于方法
@Deprecated
如果使用了它注解的程序元素,那么编译器就会发出警告信息
告诉编译器某个程序元素已经不建议使用,如果试图使用或重新定义该方法,
则会发出警告信息
@SuppressWarnings
关闭指定的编译器警告信息
被用于有选择的关闭编译器对类、方法、成员变量、变量初始化的警告
说明:使用注解时,注解放置的位置与修饰符的位置相同,但通常都放在修饰符前面
并单独成为一行或多行。
annotation并不直接影响代码语义,但是它工作的方式被看作类似程序的工具或者类库
,它反过来会对所运行的程序语义有所影响
自定义注解:
注解类型的定义是一种特殊的接口定义,只是在interface关键字前面加了一个符号@。编译程序在编译注解定义时,自动将注解从java.lang.annotation.Annotation接口继承,也因此不允许在注解后边再加上extends子句
注解的定义只能使用@interface定义,在任何可能定义接口的地方,都可以定义注解
在注解内部还可以定义常量、类、接口、enum及其他标准类型
四种元注解: cmeta-annotation用来对annotation类型进行注解的
@Target
表示该注解类型所使用的程序元素的种类
@Retention
表示需要在什么级别保存该注解信息
@Documented
将此注解包含在Javadoc中
@Inherited
允许子类继承父类中的注解
上一篇: CSS选择器种类及使用方法