我什么时候应该使用嵌套类?

时间:2011-11-03 09:13:25

标签: oop

我有一个我编写iCal事件的类,它包含公共的嵌套类。该类是iCal中组件的基本复杂类型,例如事件,警报等,并且使它们成为程序其余部分使用的公共嵌套类是有意义的。

我已经读过,拥有公共嵌套类是编程错误的标志。为什么它很糟糕,何时适合嵌套类?

1 个答案:

答案 0 :(得分:1)

这是所有恕我直言,但来自大约15年来分析其他人的创作:

如果嵌套类是私有的并且不是由包含类的公共接口公开,那么这是合适的。

例如,链接列表类将嵌套在其中的链接列表节点类,该节点类特定于实现内部,但不会向链接列表类的使用者公开。

否则,我不会打扰,因为它只会增加不必要的复杂性。

为了您的示例,如果它们被iCal事件类公开,我会将所有类更改为正常类。