我需要获取java中scala case类的成员变量/参数。我尝试以常规方式使用Java Reflection API,但不适用于Scala类。
List<Field> fields = getPrivateFields(myClass.class);
其中myClass
是scala case类。如何在Java中实现此目标?
public static List<Field> getPrivateFields(Class<?> theClass){
List<Field> privateFields = new ArrayList<Field>();
Field[] fields = theClass.getDeclaredFields();
for(Field field:fields){
if(Modifier.isPrivate(field.getModifiers())){
privateFields.add(field);
}
}
return privateFields;
}