Java自定义注解及简单应用

     Java注解,我的理解就类似于标签。比如,一说到新疆人,大家就会想到羊肉串;一说到蒙古人,大家就会想到草原和骑马。羊肉串、草原、骑马,就像是贴在新疆人和蒙古人身上的标签一样。

      接下来,我们来自定义一个简单的Java注解,并且在应用中使用它。

 

一、定义注解

package com.zhuyun;

import java.lang.annotation.*;

@Documented //javaDoc记录
@Retention(RetentionPolicy.RUNTIME)     //运行环境可用
@Target({ElementType.TYPE})             //用于任何地方
public @interface Name {               //自定义一个注解
    String value() default "";
}

 

二、将注解应用在目标属性上

声明一个Person类,给这个类打上羊肉串的标签

package com.zhuyun;

@Name("羊肉串")
public class Person {
    private String id;
    private String name;
    private int age;
}

 

三、通过反射获取注解值

通过获取标签的值,来判断这个人到底是新疆人还是蒙古人

package com.zhuyun;

import java.lang.reflect.Field;

public class Main {
    public static void main(String[] args) throws NoSuchFieldException {
        Person person = new Person();
        Class clazz = person.getClass();
        Name annotation = (Name) clazz.getAnnotation(Name.class);

        if (annotation.value().equals("羊肉串")){
            System.out.println("这是个新疆人");
        }else if (annotation.value().equals("骑马")){
            System.out.println("这是个蒙古人");
        }
    }
}

四、执行结果

结果是个新疆人

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值