注解的使用

什么是注解

它提供一种安全的类似注释的机制,用来将任何信息或元数据与程序元素进行关联。

为程序的元素增加更加直观的说明,这些说明与程序的业务逻辑无关,并且供特定的程序和框架使用。

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 它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作

 

posted @ 2019-03-23 20:52  ivywong11  阅读(223)  评论(0)    收藏  举报