java注解

注解.jpg

简单实践

定义注解

import java.lang.annotation.*;
@Documented
@Target(ElementType.FIELD)
@Inherited
@Retention(RetentionPolicy.RUNTIME)
public @interface UserAnnotation {
  String name() default "test";

  enum Addrass{Beijing,Shanghang,shanxi};

  Class runtime() default Object.class;

}

注解使用

import annotation.an.UserAnnotation;

public class Entity {
    @UserAnnotation(name = "lalallala")
    private String test;

    public String getTest() {
        return test;
    }

    public void setTest(String test) {
        this.test = test;
    }
}

注解行为添加

import annotation.an.UserAnnotation;

import java.lang.reflect.Field;

public class Utils {
    public static void getEntityInfo(Class<?> clazz) {
        Field[] fields = clazz.getDeclaredFields();
        for (Field field: fields) {
            if(field.isAnnotationPresent(UserAnnotation.class)){
                UserAnnotation d = (UserAnnotation) field.getAnnotation(UserAnnotation.class);
                System.out.println(d.name());
            }
        }
    }
}

测试

import annotation.Entity.Entity;
import annotation.Entity.Utils;

public class Test{
    public static void main(String []args){
        Utils.getEntityInfo(Entity.class);
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Java 中的注解(Annotation) 是一个很方便的特性在Spring当中得到了大量的应用 , 我们也可以开...
    _秋天阅读 13,335评论 3 22
  • 注解 创建注解 下面代码创建了一个名为MyAnno的注解,有两个成员str和val。@Retention(…)注解...
    kylinxiang阅读 9,190评论 0 2
  • 什么是注解 注解对于开发人员来讲既熟悉又陌生,熟悉是因为只要你是做开发,都会用到注解(常见的@Override);...
    张明云阅读 25,650评论 6 154
  • 注解基本概念 我们在开发当中经常看到一些注解,例如override,Deprected等,这些注解再常见不过了,但...
    zhonj阅读 4,739评论 0 0
  • 晚上儿子和我睡前聊天 儿子:“妈妈,你和姥姥,爸爸小的时候是怎么样的?” 我:“姥姥小的时候吃了很多苦,没有饭吃,...
    monicaqiqi阅读 1,747评论 0 1

友情链接更多精彩内容