注解的使用
什么是注解:
它提供一种安全的类似注释的机制,用来将任何信息或元数据与程序元素进行关联。
为程序的元素增加更加直观的说明,这些说明与程序的业务逻辑无关,并且供特定的程序和框架使用。
Java注解是附加在代码中的元信息,用于一些工具在编译、运行时进行解析和使用,起到说明配置的作用。
注解不会影响代码本身的实际逻辑,只起到辅助的作用,包含在java.lang.annontation中。
元数据:
元注解
@Retention--定义了注解的生命周期
取值(RetentionPoicy)有:
1.SOURCE:在源文件中有效(即源文件保留)
2.CLASS:在class文件中有效(即class保留)
3.RUNTIME:在运行时有效(即运行时保留
@Target--说明了所修饰的对象范围
取值(ElementType)有:
1.CONSTRUCTOR:用于描述构造器
2.FIELD:用于描述域
3.LOCAL_VARIABLE:用于描述局部变量
4.METHOD:用于描述方法
5.PACKAGE:用于描述包
6.PARAMETER:用于描述参数
7.TYPE:用于描述类、接口(包括注解类型) 或enum声明
@Documented--一个简单的Annotations标记注解,表示是否将注解信息添加在java文档中。
@Inheirited--定义该注解与子类的关系
常用的注解
1.@Override
2.@Deprecated”意在-----这个方法或类不再建议使用。在新版本中有其他方法或类可以代替这个使用,以后的版本也不会再更新这个方法或类
3.@SuppressWarnings--用于抑制编译器产生警告信息。
自定义注解:
1. Annotation型定义为@interface,所有的Annotation会自动继承java.lang.Annotation这一接口,并且不能再去继承别的类或是接口.
2.参数成员只能用public或默认(default)这两个访问权修饰
3.参数成员只能用基本类型byte,short,char,int,long,float,double,boolean八种基本数据类型和String、Enum、Class、annotations等数据类型,以及这一些类型的数组.
4. 要获取类方法和字段的注解信息,必须通过Java的反射技术来获取 Annotation对象,因为你除此之外没有别的获取注解对象的方法
5. 注解也可以没有定义成员, 不过这样注解就没啥用了
PS:自定义注解需要使用到元注解
注解的作用:
1.生成文档
2.跟踪代码依赖性,实现替代配置文件作用(spring中使用大量的注解,简化配置文件)
3.编译时进行格式检查
@Autowired 它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作

浙公网安备 33010602011771号