gpt4 book ai didi

java - 从 ArrayList 中获取特定类

转载 作者:行者123 更新时间:2023-11-29 05:58:43 25 4
gpt4 key购买 nike

我正在做一个项目,我需要将大量对象添加到 ArrayList,然后稍后调用其中的特定函数。我有这部分,但在我的程序中,我需要仅使用我正在寻找的类的参数来访问 ArrayList 中的特定实例。例如:

public class Manager {
public static ArrayList<O> loadedHacks = new ArrayList<O>();
public void initOs(){
loadedHacks.add(new O());
}
}

public class O {
public boolean enabled = false;
public void onEnable(){}
}

public class A extends O{
}

然后我想做这样的事情:

if(Helper.get(A.class).enabled){}

最佳答案

从你的问题中并不能完全清楚你试图解决的实际问题是什么,但如果我理解正确的话,你想要做的是说:“对象 X 可能是A 类。如果它是 B 的子类,那么我想调用 B.method(),它没有在 A 上定义。

在这种情况下,您可以这样做:

if (object instanceof SpecificSubclass) {
SpecificSubclass specificObject = (SpecificSubclass) object;
specificObject.specificMethod();
}

编辑:从您的评论来看,您正在寻找的功能似乎略有不同。如果您有一个类作为参数,那么要查看特定对象是否实际上是该类的实例,请使用 Class.isAssignableFrom() 方法。

关于java - 从 ArrayList 中获取特定类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11026518/

25 4 0