gpt4 book ai didi

java - 使用反射获取所有私有(private)字段

转载 作者:IT老高 更新时间:2023-10-28 13:51:49 26 4
gpt4 key购买 nike

我想知道有没有办法在 Java 中获取某个类的所有私有(private)字段及其类型。

例如,假设我有一个类(class):

class SomeClass {
private String aaa;
private SomeOtherClass bbb;
private double ccc;
}

现在我想获取类 SomeClass 的所有私有(private)字段(aaabbbccc) (事先不知道所有字段的名称)并检查它们的类型。

最佳答案

可以通过ClassgetDeclaredFields()方法获取所有字段。然后您必须检查每个字段的修饰符以找到私有(private)字段:

List<Field> privateFields = new ArrayList<>();
Field[] allFields = SomeClass.class.getDeclaredFields();
for (Field field : allFields) {
if (Modifier.isPrivate(field.getModifiers())) {
privateFields.add(field);
}
}

请注意,getDeclaredFields() 不会返回继承的字段。

最终,您可以通过 Field.getType() 方法获得字段的类型。 .

关于java - 使用反射获取所有私有(private)字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15315368/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com