【发布时间】:2012-02-26 22:05:42
【问题描述】:
internal partial class Class1
{
private class Class2 : ISomething, ISomethingElse
{
private class Class3 : ISomething
{
}
}
}
我希望Class3 本身托管另一个私人Class4,但这会使Class3 太大,所以我想使Class3 部分。我知道如何对非嵌套类做到这一点。如何将嵌套类部分放在单独的文件中?
【问题讨论】:
-
如果您需要 4 级嵌套类,您可能希望重新考虑您的设计。
-
这似乎是一个糟糕的设计,但如果 Class2 只是为 Class1 所需要和设计的,为什么还要向所有人公开呢?这同样适用于 Class3 和 Class4。我只公开可能被超过 1 个类使用的类,否则我会嵌套。
-
我仍然看不出 4 级嵌套私有类有什么问题。我的意思是你们都说不要这样做,但我看不出一个令人信服的理由为什么不这样做。我知道 100% 的所有嵌套类都不会在它们的宿主类之外的任何其他地方使用。
-
但我也想将它们隐藏在同一个程序集或命名空间中的类中。因为如果我能为自己保持清洁和良好的划分,为什么不呢?
-
保持代码简洁,并在易于理解的小块中使自己免于将来的颈部疼痛。
标签: c#