【问题标题】:Where Static class is preferred?哪里首选静态类?
【发布时间】:2020-01-31 06:23:11
【问题描述】:

为什么我们使用静态类?作为新手我理解

(如果我错了,请纠正我。)

  • 我们不必创建类的实例并按名称使用数据成员和方法。
  • 任何其他类都不能继承它
  • 我们只有有静态方法和静态数据成员

在正常上课时

  • 我们也可以有静态成员和静态方法。
  • 并以班级名称称呼他们

那为什么首选静态类呢? 或者 哪里首选静态类?

【问题讨论】:

  • “几乎从不......”保存一些根类型 - 更喜欢依赖注入。它使测试更加更容易。 (不要担心继承:它通常被过度使用..)

标签: c# asp.net asp.net-mvc class static-classes


【解决方案1】:

From MSDN:

为什么首选静态类?或者在哪里首选静态类?

静态类可以用作集合的方便容器 只对输入参数进行操作而不必获取的方法 或设置任何内部实例字段。例如,在 .NET 框架类库,静态 System.Math 类包含方法 执行数学运算,无需存储 或检索特定于 Math 实例的数据 类。

【讨论】:

    【解决方案2】:

    不能实例化静态类。静态类的所有成员都是静态的,可以通过类名直接访问,无需创建类的实例。

    静态类有以下特点:

    • 静态类不能包含实例构造函数。
    • 静态类只包含静态成员。
    • 无法实例化静态类。
    • 静态类是密封的。这意味着,你不能继承其他 来自实例类的类。 您可以将静态类用于任何类的扩展,也可以使用一些您希望使用整个解决方案的方法。

    【讨论】:

    • 问题是“首选静态类在哪里?” - 这如何回答何时应该使用静态类?
    猜你喜欢
    • 2011-03-10
    • 2011-03-23
    • 2012-06-22
    • 2013-06-30
    • 2011-09-03
    • 2021-03-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多