检查一个类是否是另一个类的实例?

时间:2014-03-24 01:23:26

标签: java

我有三个班,塔,地穴和游戏。

Game类是抽象的。

    public abstract class Game {

    public Game(){

    }

Tower类和Crypt类都扩展了Game,如下所示:

    public class Tower extends Game {

public Tower(){
    super();
}

现在,如果我有一个变量“g”,它是Game类的一个实例,我怎么知道“g”是否也是Tower。如何判断游戏“g”是否为Tower,而不是Crypt。换句话说,我怎样才能将“g”与塔或地穴区分开来。

        public void startInstanceControl(Game g){
    if(g instanceof Tower){
        //do X
    }
}

我认为instanceof关键字可以正常工作,但是我得到了错误:

不兼容的条件操作数类型实例和塔

0 个答案:

没有答案