我正在编写一个小型java游戏,其中有各种类型的怪物,几个计算机控制的玩家和一个人类控制的玩家。游戏世界是一个相当基本的二维网格。网格被声明为它期望Humanoid 对象。即,Humanoid [][]网格
。然而,每种类型的角色都需要重写人形代码的各个部分。
我遇到的问题是,如果代码需要类人机器人,我如何调用人类特定的移动方法,以及如何检查移动的界限。
如果有任何不清楚的地方,请告诉我。
谢谢
注意:我的人形类没有移动方法,并且由于我为类执行此操作,因此也不允许这样做
最佳答案
您无需执行任何操作。如果您有一个带有 move
方法的 Humanoid
类,以及一个从 Humanoid
扩展的 Human
类,带有它自己的 move
方法,当您调用 move
时,将使用 Human 的版本(如果您在 Human 实例上调用它)。
如果你这样做
Humanoid human = new Human();
human.move(); // Human's move is invoked
Humanoid orc = new Orc();
orc.move(); // Orc's move is invoked
运行时自动调用适当的移动方法。
关于java - 如何调用某个类的方法(继承),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9881621/