前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java基础:注解的定义与使用

java基础:注解的定义与使用

作者头像
许喜朝
发布2020-08-22 17:52:25
2860
发布2020-08-22 17:52:25
举报

java中的注解

1。该如何来理解注解?

乔布斯重新定义了手机,罗太君重新定义了傻逼。自然而然的就给罗太君贴上了傻逼的标签,不熟悉老罗的人,不知道他当教师,办博客,做手机,殊不知老罗还有“理想主义者”,“单口相声演员”,“段子手”等等标签

老罗还是那个老罗,只是人们对于他的不同认识给他贴上了不同的标签

我们可以简单概况一下,标签是对事物行为某些角度的评价与解释

想像代码具有生命,注解就是对于代码中某些鲜活个体的贴上去的一张标签。简化来讲,注解如同一张标签。

注解使用@interface进行修饰

定义一个注解

/**
 * 定义了一个注解
 */
@Target(ElementType.METHOD)  /*元注解,METHOD表明在方法上有效*/
@Retention(RetentionPolicy.RUNTIME) /*元注解,RUNTIME表明运行时有效*/
public @interface testAnnotation {

}

定义一个类 里面有两个方法,一个打上注解一个不打

/**
 * 测试类2定义两个方法打上自定义的注解看看各自的执行情况
 */
public class Test2 {
    @testAnnotation
    public void fun(){
        System.out.println("层楼终究误少年");
    }
    public void fun2(){
        System.out.println("自由早晚乱余生");
    }
}

编写测试类,看刚刚两个方法的执行情况

public class Test {
    public static void main(String[] args) throws InvocationTargetException, IllegalAccessException {
        Test2 test = new Test2();
        //通过反射获取到test上的所有方法存入数组
        Method[] methods = test.getClass().getDeclaredMethods();
        for (Method method : methods) {
            //如果指定类型的注解存在返回true否则返回false
            if(method.isAnnotationPresent(testAnnotation.class)){
                method.invoke(test,null);
            }
        }
    }
}

控制台打印了打上注解的那个方法

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-08-20 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • java中的注解
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档