【问题标题】:Why would you declare a variable as a type named after a class为什么要将变量声明为以类命名的类型
【发布时间】:2019-12-07 16:30:48
【问题描述】:

以 C# 为例。假设有一个名为 ExampleClass 的类,变量就是值。为什么要声明这样的变量

private ExampleClass value;

【问题讨论】:

  • 问题是什么?您可以在类空间内声明私有字段或属性或事件。在这种情况下,您要在“仅此类范围”中声明名称为“值”的“ExampleClass 类型”变量

标签: c# class declaration


【解决方案1】:

您不会声明名为 value 的变量,除非有一些不可避免 要求这样做。

原因是因为它没有有意义地命名

当我们有意义地命名变量时,我们的代码就变成了自我记录。有据可查的代码总是值得追求的目标。

【讨论】:

    【解决方案2】:

    这是一个字段,可以在类中声明。示例:

    private class Test
    {
        private int _customField;
    }
    

    _customField 是我的字段,类型为 int(而不是 ExampleClass)。人们使用它来使某些东西更易于访问,因为 C# 不仅仅是函数,它是 OOP。

    【讨论】:

      【解决方案3】:

      有一个东西叫Primitive Obsession。在这里使用类/特定类型是解决它的方法。

      如果你使用一个类,你会得到所有编译器类型检查来帮助你避免无效值。

      this Enum vs Integer问题为例。

      【讨论】:

        猜你喜欢
        • 2016-07-03
        • 1970-01-01
        • 2014-05-07
        • 2017-04-30
        • 2012-06-26
        • 1970-01-01
        • 2012-08-17
        • 2019-11-04
        • 1970-01-01
        相关资源
        最近更新 更多