【发布时间】:2010-10-15 01:23:47
【问题描述】:
我发现我有几个地方设计了公共静态内部类来扩展“帮助”类,这使我的代码更加类型安全,并且在我看来,可读性更高。例如,假设我有一个“SearchCriteria”类。我搜索的不同事物有很多共性(一个搜索词,然后是一组搜索词类型、日期范围等)。通过在静态内部类中扩展它,我将扩展和可搜索类有具体区别。这似乎在理论上是一个坏主意(紧耦合坏!),但扩展是特定于这个可搜索的类(一个类,一个目的)。
我的问题是,根据您的经验,使用静态内部类(或任何您的语言等价物)是否使您的代码更具可读性/可维护性,或者这是否最终让您陷入 EOF?
另外,我不确定这是否是社区 wiki 资料。
【问题讨论】:
-
这是一个事实问题吗?能有正确答案吗?如果不是,这是一个讨论主题,最好作为社区 wiki。
-
您说的是哪种语言?大多数OO语言没有静态内部类这样的概念。
-
S.Lott:很公平。社区维基化然后。 Neil Butterworth:我想更好的措辞选择是嵌套类而不是静态内部?这原本是 Java。
-
好吧,也有不少人没有嵌套类——Smalltalk for one
-
尼尔:很公平。然而,我最广泛使用的两种 OO 语言,Java 和 C++,都有不同种类的嵌套类。所以我认为这是一个比 Java 更普遍的问题。我应该如何更好地标记/措辞这个问题?
标签: class oop inheritance inner-classes nested-class