我有一个重新创建游戏的任务。我必须实现一个字符列表。例如,我有 Character
类,它只有角色的名字。
现在,我需要创建一个角色 Warrior
,它是游戏中的敌人。当我的敌人类基本上没有属性时,我是否需要像这样实现我的继承:Character --> Enemy --> Warrior
。它更像是一种分类。
有没有办法在同一个类中定义一个 Enemy
和一个 Warrior
,其中 Warrior
的类型是 Enemy
,它的类型是 Character
?会有更多的敌人,但只有一个 Warrior
。
谢谢
最佳答案
你说敌人类基本没有属性。
现在就是这种情况,但使用 Enemy 类和继承的一个原因是,通过现在构建(几乎)透明的灵活性,它可以更好地预测 future 未知的代码需求。
你当然可以为 Enemy 类创建一个类型,但是随着你添加更多的敌人,你可能会发现这个解决方案需要越来越多的 switch
语句和 if
子句形式的代码来检查类型。