Java注解笔记

前言

最近开始接触spring-boot,它能减少项目的配置文件数量,让项目结构变得极简并且提高开发效率。之所以能够极简,最大的原因就是spring-boot提供了一大堆(让我)”不知所谓”的注解,是最让我懵比的一点。而且我发现自己注解的基本知识几乎忘光了。所以有必要重新pick up一下基础知识。(尴尬-_-|||)

注解的作用

To be filled…

例子

@MyAnno.java
@Retention(RetentionPolicy.RUNTIME)//运行时起作用
@Target(ElementType.TYPE)//改注解作用于类或接口
public @interface MyAnno {

    public String value() default "";

}
@AnnoMethod.java
@Retention(RetentionPolicy.RUNTIME)//works when runtime
@Target(ElementType.METHOD)//works on method...
public @interface AnnoMethod {

public String value() default "";

}
A.java
@MyAnno(value="new value is xxx")
public class A {

}
TestMyAnno.java
public class TestMyAnno {

    public static void main(String[] args) {

        Class<A> clazz = A.class;

        Annotation[] annotations = clazz.getAnnotations();
        System.out.println(annotations.length);
        for (Annotation annotation : annotations) {
            if(annotation instanceof MyAnno) {
                System.out.println(annotation.getClass().getName());
                MyAnno anno = (MyAnno)annotation;
                System.out.println(anno.value());
            }
        }

        Method[] methods = clazz.getMethods();
        for (Method method : methods) {
            if(method.isAnnotationPresent(AnnoMethod.class)) {
                AnnoMethod am = method.getAnnotation(AnnoMethod.class);
                System.out.println(am.value());
            }
        }
    }

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值