有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java初始化另一个变量类型的变量

我有一个类,它的变量和方法如下:

public class ProjectsPage extends State {
    private Container<Project> newcontainer;

    public ProjectsPage(Kick kick) {
        super(kick);
    }

    public void setItem() {
        newcontainer = ??? kick.proj
    }
}

对象kick具有与newcontainer相同类型的变量proj

public class Kick {
    public Container<Project> proj = new ContainerDB();
    //here I add content to proj
}

现在我想用与kick相同的构造函数ContainerDB初始化newcontainer。项目。换句话说,做一个空的踢。项目。类似这样(因为kick.proj和newcontainer使用相同的接口):

newcontainer = new ContainerDB();

但是问题是classkick可以更改项目的类。像

public class Kick {
        public Container<Project> proj = new ContainerDBSQL();
        //here I add content to proj
    }

我需要它(我的意思是用相同的类型初始化),因为稍后newcontainer应该只包含kick中的特定条目。项目。不是所有的条目。 怎么做


共 (1) 个答案

  1. # 1 楼答案

    尝试使用以下命令实例化对象:

    newContainer = kick.proj.getClass().newInstance();