If you want to get all static fields in a class, use code snippet below.
The key part is "Modifier.isStatic", "getDeclaredFields" methods
package com.dukesoftware.reflection;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class ReflectionUtils {
public static List<Field> getStaticFields(Class<?> clazz)
{
Field[] declaredFields = clazz.getDeclaredFields();
return Arrays.stream(declaredFields)
.filter(field -> Modifier.isStatic(field.getModifiers()))
.collect(Collectors.toList())
;
}
}
コメント