Java注解(Annotation)

Annotation(注解)

注解是java推出的一种注释机制,特点是它可以在编译运行阶段读取,从另一个角度看Annotation也是一个java类

在这里插入图片描述

一个Annotation类里面可以继续引用其他的Annotation类

  1. Target
    它自身也是一个注解,他只有一个数组属性,用于设定该注解的目标范围,因为是数组所以可以同时设定多个范围
    如果要同时作用在类和方法上:
@Target({ElementType.TYPE,ElementType.METHOD})

Target值只要被设定为一种类型,那么你就只能在这个范围内引用它,其他地方都不行

  • ElementType.TYPE
@Service
public class MessageServiceImpl implements MessageService{

    public String getMessage() {
         return "Hello World!";
    }

}
  • ElementType.METHOD
public class MessageServiceImpl implements MessageService{

    @ResponseBody
    public String getMessage() {
         return "Hello World!";
    }

}
  • ElementType.FLELD

public class MessageServiceImpl implements MessageService{

    @Autowired
    private WorkspaceService workspaceService;

}
  • ElementType.PARAMETER
public class MessageServiceImpl implements MessageService{

    public String getMessage(@RequestParam("msg")String msg) {
         return "Hello "+msg;
    }

}
  1. Retention
    用于声明注解的声明周期,有三个值可以选择:
    1、SOURCE:纯注释作用 2、CLASS:也就是在编译阶段有效 3、RUNTIME:运行时有效
@Retention(RetentionPolicy.RUNTIME)
  1. Doucumented
    将注解中的元素包含到javaDoc文档中

  2. @interface
    固定语法,声明当前的Java类型是Annotation

  3. Annotation属性
    和类的属性差不多,约定了属性的类型和属性的名称

Annotation也是java类,所以也需要import

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

-irony-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值