Доступ к методу подкласса через ArrayList

У меня есть ArrayList игроков в игровом классе. Игрок может играть как человек или как процессор. Таким образом, у меня есть классы человека и процессора, который расширяет класс игрока

public class Game{
    private ArrayList<Player> _list;
    Game(){
        _list=new ArrayList<Player>();
    }
    //**********
    void doSomething(){
        for(int i=0;i<_list.size();i++){
            Player q=_list.get(i);
            if(q is instaceof CPU) //I'd like to call a CPU method
            else //I'd like to call a Human method
        }

    }
}

public abstract class Player{
    private String name;

    Player(string name2){
        name=name;
   }
    //********** more methods

}

pulic class Human extends Player{
    public Human(String name){ 
        super(name);
    }
    void methodHuman();       
}

public class CPU extends Player{
    public CPU (String name){
        super(name);
    } 
    void methodCPU();
}

Как я могу вызвать метод подклассов? Я должен сделать бросок?

0 ответов

Другие вопросы по тегам