繁体   English   中英

C#嵌套类,清理声明

[英]C# Nested Classes, Clean up Declaration

C#中是否可以整理以下类声明?

namespace Application.Namespace
{
    public class MasterClass
    {
        public class FlyingSaucer
        {
            public class Rotator
            {
                public class Cube
                {

仍然保持类结构,只是清理声明。

否-考虑到您有4个嵌套级别,它已经​​很整洁了。

但几乎可以肯定,您一开始就不应有4个嵌套层。 你为什么想这么做? 您有一个名为subClass1的类,按正常含义它不是子类(即,从另一个特定的类派生; subClass1仅从object派生)。

嵌套类非常少见-我想我什至从未见过三个嵌套级别,更不用说四个了。 您为什么认为这是个好主意?

之间有什么关系

FlyingSaucer-> Rotator-> Cube,我认为这是遏制的一个典型示例。

FlyingSaucer包含旋转器,而Rotator包含立方体。

因此,在这种情况下,您可以考虑通过在FlyingSaucer中创建Rotator和Cube的属性来使用“合成”。

您可以在创建对象FlyingSaucer时注入这些依赖项。 这将消除类中的非常深层的嵌套,并且我认为,您可能需要从主类中访问FlyingSaucer,Rotator和Cube的对象。

因此,在这里使用Composition确实可以使您的类层次结构更简单,并且易于扩展和维护。

看起来您在混淆子类的继承。

子类别通常很少见。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM