使用子类

时间:2015-12-25 00:25:42

标签: java inheritance override

我正在用Java进行蛇游戏,我遇到了以下问题:

我想尽可能地通用,所以我创建了一个Board接口,后来由GameBoard实现;以及后来由Snake,Wall,FoodPackage实现的BoardObject界面。 在BoardObject接口中有一个抽象方法generateObject(Board b),它用于在特定的板上生成一个对象。 但是当我实现它时,我希望它是generateObject(GameBoard b)。我怎么能这样做?我想它不会被这种方式覆盖,所以我想这个escamotage:

generateObject(Board b){
   generateObject( (GameBoard) b);
}

,其中

generateObject(GameBoard b){
// this will do the real thing
}

但我不确定这是正确的做法,因为它可能会以某种方式给我错误(例如,如果我用另一个类实现Board,比如GameBoardTwo,并通过GameBoardTwo通过该方法,可能会发生什么?)

我真的希望你能帮助我。

0 个答案:

没有答案