gpt4 book ai didi

java - 通过反射获取第一个 parent 的领域

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:32:01 26 4
gpt4 key购买 nike

我正在尝试获取对象的第一个父对象的字段和值。我当前的代码是这样的:

Class<? extends Object> cls = obj.getClass();
Field[] fields = cls.getDeclaredFields();
for ( Field field : fields )
{
String fieldName = field.getName();
String fieldValue = field.get(obj);
}

我的类结构是这样的:

class A
{
int x;
}

class B extends A
{
int y;
}

class C extends B
{
int z;
}

现在,我将一个 C 对象传递给该方法,我想从 C 和 B 中获取所有字段,而不是从 A 中获取。有没有办法做到这一点(使用反射,我不想实现其他方法)?

最佳答案

Luchian,使用 getSuperclass()方法获取对表示所讨论对象的父类(super class)类型的 Class 对象的引用。之后,您将可以像在示例中一样轻松地获取字段。

关于java - 通过反射获取第一个 parent 的领域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7966466/

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