我的类有变量和方法如下:
public class ProjectsPage extends State {
private Container<Project> newcontainer;
public ProjectsPage(Kick kick) {
super(kick);
}
public void setItem() {
newcontainer = ??? kick.proj
}
}
对象kick的变量 proj 与newcontainer的类型相同:
public class Kick {
public Container<Project> proj = new ContainerDB();
//here I add content to proj
}
现在我想用与 kick.proj 相同的构造函数ContainerDB初始化newcontainer。换句话说,空 kick.proj 。这样的事情(因为kick.proj和newcontainer使用相同的接口):
newcontainer = new ContainerDB();
但问题是班级踢可以改变项目的类。喜欢
public class Kick {
public Container<Project> proj = new ContainerDBSQL();
//here I add content to proj
}
我需要它(我的意思是使用相同类型初始化),因为稍后newcontainer应该只包含来自kick.proj的特定条目。不是所有的条目。 怎么做?
答案 0 :(得分:0)
尝试使用以下方法实例化对象:
newContainer = kick.proj.getClass().newInstance();