Java注解详解

本文介绍了Java注解的基本概念,包括JDK内置注解、自定义注解的创建及使用,以及@Target、@Retention等元注解的作用。通过示例展示了如何使用注解以及如何在代码中获取和处理注解信息。最后,提供了自定义注解@Etoak的实例,并给出了测试代码以演示注解的运行时检查。

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

前言

Q:什么是注解?
A:@interface 是四大类之一,关键字:Annotation,它是写在类中的注解,它是给类看的而不是给人看的注释

1.JDK中提供了一些注解,比如@Override @Deprecated...
2.自定义注解 关键字@interface
Marker annotation
String value() default ""  @xx("value属性可以不写")
3.java.lang.annotation子包中的注解
@Target:表示注解适用的程序元素,有一个value属性,ElementType属性是个枚举
@Retention:表示注解保留策略 value属性 SOURCE/CLASS/RUNTIME
@Documented:注解信息允许生成文档

关键字:getAnnotations()----Annotation[]

可以Method或者Class可以直接调用获取自己头顶上的注解;

例子:写一个@Etoak注解

@Target(ElementType.Method)
@Retention(RetentionPolicy.Runtime)
public @interface Etoak{
	String value();
}

测试类

public class test{
	@Etoak("张三")
	public show(){
		System.out.println("show...")
	}
}

测试代码

Class cls =test.class;
Method[] ms = cls.getDeclaredMethods();
for(Method m :ms){
	Annotation[] ans =m.getDeclaredAnnotations();
	for(Annotation an:ans){
		if(an.annotationType==Etoak.class){
			m.invoke(new test);//打印show...
		}
	}
}

总结

这就是关于java注解的全部内容啦
原创不易,喜欢请点赞+关注哦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

商朝

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

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

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

打赏作者

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

抵扣说明:

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

余额充值