当前位置:首页 > 后端开发 > JAVA反射获取所有枚举类

JAVA反射获取所有枚举类

6个月前 (05-20)49

定义枚举接口

public interface BaseEnum {
    /**
     * 获取枚举值
     * @returnint
     */
    Integer getValue();

    /**
     * 获取枚举名称
     * @return
     */
    String getName();
}

枚举类

@Getter
public enum TestEnum implements BaseEnum {
    TEST1("name1",1),
    TEST2("name1",2),
    TEST3("name1",3);

    private String name;
    private Integer value;

    private TestEnum(String name,Integer value){
        this.name = name;
        this.value = value;
    }

}

获取所有枚举

    public static void test4(){

        Reflections reflections = new Reflections("com.xxx.modules");

        Set<Class<? extends BaseEnum>> monitorClasses = reflections.getSubTypesOf(BaseEnum.class);

        System.out.println("size:"+monitorClasses.size());
        monitorClasses.forEach(m->{
            try {
                System.out.println("name:"+m.getSimpleName());
                BaseEnum[] enumConstants = m.getEnumConstants();

                for (BaseEnum anEnum : enumConstants) {
                    System.out.println("enumName:"+anEnum+"  value:"+anEnum.getValue()+"  name:"+anEnum.getName());
                }

            } catch (Exception e) {
                e.printStackTrace();
            }
        });
    }

输出

JAVA反射获取所有枚举类 _ Java侠

作者:keeper42
来源链接:https://blog.csdn.net/keepfriend/article/details/112993007

“JAVA反射获取所有枚举类” 的相关文章

java 反射获取指定字段名的值或者设置字段的值

反射 定义的话就是通过一个类的class文件来获取整个类的信息,反正大家都说反射是框架的灵魂,例如spring的控制反转最核心的技术就是发射。...

JAVA反射解析-getDeclaredMethod方法

解析反射类java.lang.Class中的属性和方法 1、public Method getDeclaredMethod(String name,...

Java反射一

Java反射一

一 .什么是反射? class是一切反射的根源,JAVA反射机制是在运行状态中,对于任和一个类,通过反射都能够知道...

Java框架基础——反射(reflect)

Java框架基础——反射(reflect)

一、Class类的使用 1)在面向对象(oop)的世界里,万事万物皆对象。  在Java中,包括基本的数据类型,都是对象。  Class c = int.class;//int 的...

Java中的反射机制和动态代理

Java中的反射机制和动态代理

一、反射概述   反射机制指的是Java在运行时候有一种自观的能力,能够了解自身的情况为下一步做准备,其想表达的意思就是:在运行状态中,对于任意一个类,都能够获取到这个类的所有属性...

【译】2. Java反射——Class对象

原文地址:http://tutorials.jenkov.com/java-reflection/classes.html ============================...

java中使用反射获取pojo(实体)类的全部字段值

java中使用反射获取pojo(实体)类的全部字段值

       说起反射。不得不说它实在是太强大了,通过反射就能够轻轻松松拿到各种东东,假设你想在项目中解除对某个类的依赖,能够考虑用反射...

Java 反射获取Field

反射获取Field :成员变量 设置值 void set(0bject obj, object value) 获取值 ge...

java反射工具类

package com.yingchao.kgou.core; import java.lang.reflect.Field; import java.lang.reflec...

java之反射调用某个接口的所有实现类

通过反射实现获取某个接口的所有实现类,前提是这些实现类需要在同一个包中。 1.定义接口 package com.lm....