gpt4 book ai didi

java - 如何获取类中所有私有(private)数据成员的名称

转载 作者:行者123 更新时间:2023-12-01 23:21:48 25 4
gpt4 key购买 nike

我需要一个函数,它将类中所有私有(private)数据成员的名称作为字符串返回(可能在数组或列表中?),其中每个字符串都是类中私有(private)的非最终数据成员的名称。非最终条件是可选的,但它会很好。

1)这可能吗?我认为有一种方法可以检索类中的所有方法名称,所以我认为这也是可能的。

2)我知道我正在寻求施舍,但我该怎么做?

编辑

我不知道从哪里开始。

看来java.lang.reflect是一个很好的起点。我已经开始在那里进行研究。

最佳答案

这应该可以解决问题。基本上,您列出了类(class)的所有字段,然后删除了非私有(private)字段。 :

public static void main(String [] args){
List<Field> list = new ArrayList<>(Arrays.asList(A.class.getDeclaredFields()));

for(Iterator<Field> i = list.iterator(); i.hasNext();){
Field f = i.next();
if(f.getModifiers() != Modifier.PRIVATE)
i.remove();
}
for(Field f : list)
System.out.println(f.getName());
}

输出:

fieldOne
fieldTwo

A类:

class A {
private String fieldOne;
private String fieldTwo;

private final String fieldFinal = null;

public char c;
public static int staticField;
protected Long protectedField;
public String field;
}

关于java - 如何获取类中所有私有(private)数据成员的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20525796/

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