注解-元注解

元注解的作用就是负责注解其他注解,Java定义了4个标准的meta-annotation类型,他们被用来提供对其他annotation类型作说明.
这些类型和它们所支持的类在java.lang.annotation包中可以找到.(@Target , @Retention ,Documented , @Inherited )
重点:@Target:用于描述注解的使用范围(即:被描述的注解可以用在什么地方)
重点:@Retention:表示需要在什么级别保存该注释信息﹐用于描述注解的生命周期
(SOURCE<CLASS < RUNTIME)
@Document:说明该注解将被包含在javadoc中
@Inherited:说明子类可以继承父类中的该注解
复制代码
//测试元注解

public class Main {
    public static void main(String[] args) {
    @MyAnnotation
    public void test{
        
    }
    }
}
//定义一个注解
//作用域,METHOD:方法,ElementType.METHOD:表示这个注解只能在方法上使用,但是可以使用中括号,定义多个作用域
@Target(value={ElementType.METHOD,ElementType.TYPE})//TYPE:类的作用域,ElementType:主要关键字,Target:表示目标
//RUNTIME:表示我们的注解在什么地方还有效
//RUNTIME>CLASS>sources:如果定义成RUNTIME,那注解在CLASS>sources这两个位置都有效,如果定义了CLASS,那只在CLASS及sources有效,在Runtime无效,只定义sources,只会在sources,其他两个都无效
@Retention(value=RetenionPolicy.RUNTIME)//用RetenionPolicy枚举类来引用,SOURCR:源码级别时有效,CLASS:JAVA编译成CLASS时有效,RUNTIME:运行时有效,自定义的类都使用RUNTIME
//@Documented:表示是否将我们的注解生成在javadoc(文档)中
@Documented
//@Inherited:子类可以继承父类的注解
@Inherited
@interface MyAnnotation{
    
}
复制代码

 

posted @   hollg  阅读(24)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示