【有书共读】《疯狂JAVA讲义》读书笔记14
这周我主要对java的注解有了简单的了解,以下是我的读书感悟并结合了一些网上搜索的资料:
注解的定义方式是@Interface,注解属性定义是类似于普通类的方法定义的,注解属性赋值是使用default关键字完成的,如下图所示
注解在定义时可以给默认值,也可以不给,不给的话在使用时必须给值,否则会报错。
1、注解
1)@OverRide
2)@Deprecated
3)@SuppressWarnings
2、元注解(注意:元注解可以修饰其它注解,元注解本身也可由其它元注解或本身修饰)
1)注解的策略[@Retention]
1)RetentionPolicy.SOURCE:源码级别上可见,在字节码级别和运行时不可见,无法反射
2)RetentionPolicy.CLASS:字节码级别上可见,在运行时不可见,无法反射(默认)
3)RetentionPolicy.RUNTIME:运行时可见,可以法反射,即在SOURCE和CLASS级别上都有
2)注解的位置[@Target],可以是类、字段、方法等。
3)写入文档[@Documented] 在使用javadoc命令写入html文档时,该注解一同被写入
4)继承性[@Inherited],若一个注解(如@MyTest)使用了该注解修饰,则使用@MyTest注解的类的子类也会具由@MyTest注解