微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

[javaSE] 注解-自定义注解

注解的分类

源码注解

编译时注解 JDK的@Override

运行时注解 Spring的@Autowired

 

自定义注解的语法要求

① 使用@interface关键字定义注解

② 成员以无参无异常方式执行

③ 可以用defaut为成员指定一个认值

④ 成员类型是受限的包括原始类型,及String Class Annotation Enumberation

⑤ 如果注解只有一个成员,则成员名必须取名为value(),在使用时可以忽略成员名和赋值号(=)

⑥ 注解类可以没有成员,称为标识注解

package com.tsh.ano;

import java.lang.annotation.Documented;
 java.lang.annotation.ElementType;
 java.lang.annotation.Inherited;
 java.lang.annotation.Retention;
 java.lang.annotation.RetentionPolicy;
 java.lang.annotation.Target;

//元注解
@Target({ElementType.METHOD,ElementType.TYPE})作用域
@Retention(RetentionPolicy.RUNTIME)生命周期
@Inherited可以被继承
@Documented生成文档
public @interface Description {
    String desc();
    String author();
    int age() default 18;
}
使用注解
class DescAnoDemo{
    @Description(author = "taoshihan",desc = "hahaha")
    void show(){
        
    }
}

 

元注解:注解的注解

使用自定义注解

解析注解

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐