gpt4 book ai didi

java - java中是否可以创建 "Class Objects"的类?

转载 作者:行者123 更新时间:2023-12-02 09:07:28 26 4
gpt4 key购买 nike

是否可以创建一个包含 Class 类型对象的类?我知道类(class)java.lang.class是最终的,不能有子类。

最佳答案

Class 是一个 Object,就像 StringInteger 一样。因此,例如,您可以在 List 中保存 Class 对象的集合。


public class ClassTest {

public static void main(String[] args) {
Collection<Class> classes = new ArrayList<>(3);
classes.add(String.class);
classes.add(Integer.class);
classes.add(ClassTest.class);

for (Class storedClass : classes) {
System.out.println(storedClass.getSimpleName());
}
}

}

这会返回

String
Integer
ClassTest

如果您想将这些 Class 引用保留在您自己的 class 中,您可以将这些值保存在实例(或静态)字段中,并根据需要将这些值返回给您的需求,例如

public void ClassStore {
private Class myFavouriteClass; // Set in constructor or setter method
private List<Class> otherClasses; // Set in constructor or setter method

...

public Class getMyFavouriteClass() {
return myFavouriteClass;
}

public List<Class> getOtherClasses() {
return otherClasses;
}
}

关于java - java中是否可以创建 "Class Objects"的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59696554/

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