Annotation注解

一  注解的作用:

1. Annotation(注解)是JDK5.0引入的新技术。它不是程序本身,用于对程序作出解释(跟注释类似)。

2. 可以被其他代码读取(比如:编译器等)

3. 这里对于内部注解不做讨论,有兴趣可以自行百度

二 注解的格式:

注解是以 “@注释名称(参数1,参数2...)” 在代码中存在。

例如:@SupperssWarnings(value = "unchecked")

三 注解的作用域:

可以作用于:package , class , method , field等上面,相当于给他们添加了额外的辅助信息,我们可以通过反射机制等手段

实现对这些元数据的访问。

四 自定义注解

package cn.foxsand.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 1. @interface:声明一个注解类
 * 2. value():每一个方法实际上是声明了一个配置参数
 *      2.1 方法名称 = 参数名称
 *      2.2 返回值类型 = 参数的类型(返回值类型只能是:基本类型、Class、String、enum)
 *      2.3 通过default来声明参数的默认值
 *      2.4 如果只有一个参数成员,通常参数名为value(非强制性)
 * 3. @Target、@Retention:元注解,JAVA定义了4个标准的meta-annotation类型(Target、Retention、Documented、Inherited),它们被用来提供对其他注解类型做说明,
 *    这里只对最常用的2个注解做说明。
 */
//描述注解的使用范围,取值于:ElementType(PACKAGE:包、TYPE:[类、接口、枚举、Annotation类型]、CONSTRUCTOR:用于描述构造器、FIELD:描述属性、METHOD:方法
@Target(value = {ElementType.METHOD , ElementType.TYPE})
//注解的保存级别:取值于:RetentionPolicy(SOURCE:源文件有效、CLASS:class文件有效、RUNTIME:运行时有效,为RUNTIME时可以被反射读取。
@Retention(value = RetentionPolicy.RUNTIME)
public @interface MyAnnotation01 {
    String value() default "";
}

注:注解解析,整理中!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值