反射获取静态属性值

public static void main(String[] args) throws ClassNotFoundException, IllegalArgumentException, IllegalAccessException{
        Field[] fields = Enums.class.getDeclaredFields();
        for( Field field : fields ){
                // 是否是静态属性
            if(!Modifier.isStatic(field.getModifiers())) continue;
            Object object= field.get(Enums.class);
                // 是否是制定类型
            if(!(object instanceof GenericEnum)) continue;
            Map allEnum = ((GenericEnum)object).getAllEnum();
            for(Map.Entry entry : allEnum.entrySet()){
                System.out.println(entry.getKey() + ":" + entry.getValue());
            }
        }
}

这个方法主要用于获取枚举数据时用到。 GenericEnum是枚举抽象类。

 

转载于:https://www.cnblogs.com/piaoyf/p/6197905.html

你可能感兴趣的:(反射获取静态属性值)