关于注解

来源:互联网 发布:淘宝上的官方折扣店 编辑:程序博客网 时间:2024/06/30 21:18

在面试中,被问到了关于注解的一些问题,这个东西怎么说,平时用到的时候一个@后面很自然的跟什么也就出来了,也没怎么具体关注过,真要是具体一说还真挺“迷茫”的,后来自行去了解下,然后大概总结了一点东西,特此记录一下。

什么是注解?注解是在JDK1.5版本开始提供的一个新特性,是将程序的一些方法,类,属性等和元数据联系起来的一种机制。java注解(Annotation),是java代码里的一种特殊标记,以标签的形式存在于java代码中。

注解可分为内建注解,元注解(注解其他注解)和自定义注解。

java.lang包中提供了三种标准内建注解类型:@Override(就是重写,没什么可说的),@Deprecated(就是告诉编译器此方法过时),@SuppressWarnings(告诉编译器此方法不需要警告了)。

java.lang.annotation提供了@Target(设定注解的使用范围,如ElementType.PACKAGE,ElementType.TYPE,ElementType.PARAMETER,ElementType.FIELD....等声明), @Retention(就是声明该注解类的生命周期,RetentionPolicy.SOURCE,注解只保留在源文件中,RetentionPolicy.CLASS ,注解保留在class文件中,在加载到JVM虚拟机时丢弃,RetentionPolicy.RUNTIME  : 注解保留在程序运行期间,此时可以通过反射获得定义在某个类上的所有注解。 ),@Docummented(),@Inherited(关于此注解,确实难以说清,目前先记下是一个允许子类继承父类的注解吧)这4个元注解。

自定义注解,相当于自定义一个接口实现,如:public @interface AnnotationDemo{}。具体代码实现不再描述了,博客论坛方法很多了。


个人感觉大概关于注解其实记住的并不需要太多,只要能够理解注解是个什么,有什么,在编码的时候用起来应该是很自然的,这就对了。

0 0
原创粉丝点击