我正在使用光滑的 2D 引擎和我自己的实体引擎编写游戏来计算 2D 横向滚动条的细节
我的代码目前的工作方式是这样的:
实体类保存实体信息。它可以有一个能力,比如动画、声音或动作。所有能力都是称为能力的抽象类的子类。
我在 Entity 类中有一个方法,我希望在其中获取特定能力的实例,以便我可以使用它的方法:
public Ability getAbility(String id) {
for(Ability abil : ablitites) {
if(abil.getId().equalsIgnoreCase(id)) {
return abil;
}
}
return null;
}
然而,这只返回超类的一个特定实例,Ability。我希望从不同的包或类中获取子类的实例。
这样做的代码示例将不胜感激。谢谢