Java注解
Java注解是JDK5.0以后版本引入的新特性,其中有JDK提供的基本注解,也可以自定义注解。其中:
JDK提供的基本注解有
1,@SuppressWarnings,阻止编译器发出某些警告信息,其参数可以有:
deprecation:过时的类或方法警告
unchecked:执行了未检查的转换时(强转类型时)
fallthrough:switch程序通往下一种情况而没有break时的警告
path:在类路径,源文件路径中有不存在的路径时警告信息
serial:在可序列化的类上缺少serialVersionUID时警告
finally:任何finally子句不能完成时的警告
all:以上所有情况的警告
2,@ Deprecation
标记某个过时的类或方法
3,@ Override
写在方法的前面,用来标记方法是重写了某个父类的方法
自定义注解
自定义注解包括类注解,方法注解,参数注解,构造器注解,类的属性注解,包注解,局部变量注解,注解类注解。其中最常用的是类注解,方法注解,参数注解。
1,定义类注解:
@Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited public @interface JoeyxOperation { } |
2,定义方法注解:
@Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited public @interface JoeyxResource { } |
3,给类上和方法上增加注解:
@JoeyxResource(code = "userManage", desc = "User Manage Service") public class UserService implements IUserService { } |
4,获取类和方法上的注解:
public class SecurityInterceptor { } |
5,运行main方法后,结果为:
其中:
@Retention用来说明该注解的生命周期,可取参数有
RetentionPolicy.RUNTIME
RetentionPolicy.SOURCE
RetentionPolicy.CLASS
@Target 用来说明该注解可以被声明在那些元素前
ElementType.TYPE
ElementType.METHOD
ElementType.PARAMETER
ElementType.FIELD
ElementType.ANNOTATION_TYPE
ElementType.PACKAGE
ElementType.CONSTRUCTOR
ElementType.LOCAL_VARIABLE
@Documented标记该注解可以出现在java文档中
@Inherited变价该注解可以被子注解集成