Java自定义标签@MyTag

本文详细介绍了如何在Java中自定义标签,并通过注解实现其功能。包括标签类的定义、测试类的编写及运行结果解析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java标签定义与接口类似。

MyTag.java

package tiger.annotation;

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

/**
 * 用户自定义标签,带有成员变量的MyTag
 * @author x
 */
@Retention(RetentionPolicy.RUNTIME)
public @interface MyTag {
    String name();
    int age();
}

编写测试MyTag的测试类TagTest。

TagTest.java

package newpackage;

import java.lang.annotation.Annotation;
import tiger.annotation.MyTag;

/**
 * 获取注释信息
 * @author x
 */
public class TagTest {

    @MyTag(name = "nihao", age = 5173)
    public void test() {
    }
    
    public static void main(String args[]) {
        TagTest tt = new TagTest();
        try {
            Annotation[] annotation = tt.getClass().getMethod("test").getAnnotations();
            System.out.println("hi");
            for(Annotation tag : annotation) {
                System.out.println("Tag is:" + tag);
                System.out.println("tag.name()" + ((MyTag)tag).name());
                System.out.println("tag.age()" + ((MyTag)tag).age());
            }
        } catch (NoSuchMethodException ex) {
            ex.printStackTrace();
        }
    }
}

输出结果:

hi
Tag is:@tiger.annotation.MyTag(name=nihao, age=5173)
tag.name()nihao
tag.age()5173

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值