【发布时间】:2011-02-21 14:10:40
【问题描述】:
最近我决定看一下 Java,所以我对它和 OO 编程方法仍然很陌生,所以我想在学习更多之前先搞清楚一些东西,(我想它永远不会很快开始有良好的做法)。
我现在正在编写一个小 2D 游戏,但我认为我的问题适用于任何不平凡的项目。为简单起见,我将提供我游戏中的示例。
我有不同种类的僵尸,但它们都有相同的属性(x、y、健康、攻击等),所以我编写了一个界面僵尸,我通过WalkingZombie、RunningZombie TeleportingZombie 等实现。这是最好的做法吗?我是使用抽象类更好吗?还是使用超类? (我不打算部分实现功能 - 因此我选择 interface 而不是 abstract class)
我有一个描述主角(幸存者)的类,由于它很大,我想编写一个具有不同功能的界面,以便我可以轻松查看和分享它的结构。这是好习惯吗?还是只是浪费空间和时间?
我希望这个问题不会被认为是主观的,因为我认为有经验的程序员不会对这类话题持不同意见,因为接口/超类/抽象类的使用遵循逻辑规则,因此不仅仅是个人选择.
【问题讨论】:
标签: java interface abstract-class superclass