Java的使用 [接口/抽象类]
最近我决定看看Java,所以我对它和OO编程的方法仍然很陌生,所以我想在学习更多之前弄清楚一些事情,(我想从好的实践开始永远不会很快)。
我现在正在编写一个小的2D游戏,但我认为我的问题适用于任何重要的项目。为简单起见,我将提供我的游戏中的示例。
我有不同种类的僵尸,但它们都具有相同的属性(x,y,生命值,攻击等),所以我写了一个界面僵尸,我通过WalkIngZombie,RunningZombie TeleportingZombie等实现。这是最好的办法吗?我更喜欢抽象类吗?还是与超级类?(我不打算部分实现函数 - 因此我选择了接口而不是抽象类)
我有一个描述主角(幸存者)的类,由于它非常大,我想编写一个具有不同功能的界面,以便我可以轻松查看和共享其结构。这是好的做法吗?还是只是浪费空间和时间?
我希望这个问题不会被认为是主观的,因为我认为有经验的程序员不会不同意这种话题,因为接口/超类/抽象类的使用遵循逻辑规则,因此不仅仅是个人选择。