Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
(JAVA)如何使一个类拥有另一个(抽象)类的实例,然后将实例传递给多个对象?_Java_Class_Object_Instance_Abstract - Fatal编程技术网

(JAVA)如何使一个类拥有另一个(抽象)类的实例,然后将实例传递给多个对象?

(JAVA)如何使一个类拥有另一个(抽象)类的实例,然后将实例传递给多个对象?,java,class,object,instance,abstract,Java,Class,Object,Instance,Abstract,正如标题所说,我有一个类,Game,它需要一个抽象GameState的实例(扩展)。 然后游戏需要将这个实例传递给几个玩家对象。 例如: public class PlayGame { public static void main(String[] args) { Player red = new EasyPlayer() Player green = new HardPlayer() Game game = new Game(red, green) ga

正如标题所说,我有一个类,Game,它需要一个抽象GameState的实例(扩展)。 然后游戏需要将这个实例传递给几个玩家对象。 例如:

public class PlayGame {
  public static void main(String[] args) {
    Player red = new EasyPlayer()
    Player green = new HardPlayer()

    Game game = new Game(red, green)
    game.play();
  }
}
如果有人能帮助我在游戏中输入什么代码(包括构造器),我将不胜感激


提前谢谢

也许你需要这样的东西:

public class Game{
    protected GameState state;
    public Game(Colllection<Player> players){
        for(Player p: players)
            p.setGemeState(state);   
    }
}
公共类游戏{
受保护的配子状态;
公共游戏(集合玩家){
对于(玩家p:玩家)
p、 赛吉姆庄园(州);
}
}

首先,抽象类不能有构造函数,所以“拥有抽象类的实例”是不可能的。抽象类它类似于接口,但具有实现的方法。