一、注解
1、什么是注解
1、Annotation是Java5开始引入的新特色,中文名称叫注解
2、它提供了一种平安的相似正文的机制,用来将任何的信息或元数据(metadata)与程序元素(类,办法,成员变量)进行关联
3、为程序的元素(类,办法,成员变量)加上更直观更明了的阐明,这些阐明信息是与程序的业务逻辑无关,并且供指定的工具或框架应用
4、Annontation像一种修饰符一样,利用于包,类型,构造方法,办法,成员变量,参数及本地变量的申明语句中
5、Java注解是附加在代码中的一些元信息,用于一些工具在编译,运行时进行解析和应用,起到阐明配置的性能
6、注解不会也不能影响代码的理论逻辑,仅仅起到辅助性的作用。蕴含在java.lang.annotation包中
2、注解的作用
1、生成文档,这是最常见的,也是java最早提供的注解,罕用的有@param,@return等
2、跟踪代码依赖性,实现代替配置文件的性能
3、在编译时进行格局查看,如@override放在办法前,如果你这个办法并不是笼罩了超类办法,则编译时就能查看出
二、自定义注解
1、元注解
package com.msbline.annotation;
import java.lang.annotation.*;
public class MetaAnnotation {
@MyAnnotation()
public void test(){
}
}
//target用来申明注解的应用范畴
//Retention用来申明注解在什么时候失效,个别都是运行时
//Documented示意是否显示在javadoc文档外面
//Inherited示意以后注解是否可能被继承
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@interface MyAnnotation{
//定义的形式看起来像是办法,实际上是在应用注解的时候填写的参数名称,默认的名称是value
//自定义注解中填写的所有办法都须要在应用注解的时候,增加值,很麻烦,因而蕴含默认值
String name() default "zs";
int age() default 12;
int id() default 1;
String[] likes() default {"1","2"};
}
发表回复