【发布时间】:2013-09-10 18:06:18
【问题描述】:
我正在制作一款卡牌游戏,其中各种卡牌都可以使用静态定义的能力。我认为没有必要将这些能力直接实例化为对象,因为它们的所有字段和方法都是不同的。我的问题是使用静态嵌套类来表示这些能力是否是个好主意,或者是否有更有效的替代方法?
class Ability {
...
static class Strike {
...
}
static class Detonate {
...
}
static class Dodge {
...
}
...
}
【问题讨论】:
-
是
Strike还是Ability? -
“更有效”没有任何意义。没有任何背景,很难告诉你什么是正确的设计。 (例如,
Ability和Strike等将如何以及在何处使用?) -
也就是说我的看法是这没关系。试图隐藏不属于 API 表面的每个类对我来说似乎过于迂腐。
标签: java oop inheritance composition