我有一组基本类,ei:
public class Item{
}
我想添加功能以扩展具有 Storable 能力的基本类:
- 用于防止数据存储在对象中的新参数
- 从存储中加载对象的新静态方法
我创建了一个抽象类 Storable:
public abstract class Storable{
private StorageRow str;
public void setStorageRow(StorageRow row){
str = row;
}
public static ArrayList<? extends Storable> getAll(){
ArrayList<Storable> ans = new ArrayList<Storable>();
Class<Storable> extenderClass = ??????
ArrayList<StorageRow> rows = Storage.get(llallala);
for(StorageRow row : rows){
Object extender = extenderClass.newInstance();
// Now with reflection call to setStorageRow(row);
}
return ans;
}
}
现在我用 Storable 扩展我的基础类:
public class Item extends Storable{}
电话是:
ArrayList<Item> items = (ArrayList<Item>) Item.getAll();
主要问题是:现在我在超类的静态方法 getAll 中。如何获得子类?