c# - 静态类与。具有私有(private)构造函数和所有静态属性和方法的类?

标签 c# .net

当我创建实用程序类时,我通常会创建一个具有私有(private)构造函数并将其所有方法和属性公开为静态的类。最好的方法是什么?我的做法与创建静态类的方式有何区别?

最佳答案

静态类是自动密封的,因此人们无法继承和覆盖它们的行为。

这是唯一真正的区别(除非 IL 中有特殊的东西)

因此,如果您使用静态类,就可以省去将构造函数设为私有(private)并声明类密封的麻烦。

我要补充一点,将类定义为静态的是“自文档化”代码。你的库的用户会知道这个类不应该被实例化,并且只有静态值。

关于c# - 静态类与。具有私有(private)构造函数和所有静态属性和方法的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/323022/

相关文章:

c# - 快速清除以下列表或适当的 .NET 集合的方法

c# - .NET 4.0 中的 WebHttpBinding?

c# - 调试时 "run until this variable changes"怎么办?

c# - 如何处理它在任务中创建的对象?

c# - 基于抽象实体的预加载嵌套导航问题(EF CTP5)

c# - 防止 Assembly.GetTypes() 加载依赖项

c# - 这个包含尖括号的符号是什么意思?

c# - 从 azure blob 打开并修改 mdb 文件

c# - 如何使用 showdialog (.NET Compact Framework) 使表单居中

c# - 如何让计算机在 C# 中发出蜂鸣声?