静态类设计

注释

此内容由 Pearson Education, Inc. 的许可从 框架设计指南:可重用 .NET 库的约定、习惯和模式(第 2 版)重新打印。 该版于2008年出版,此后该书已于 第三版全面修订。 此页上的一些信息可能已过期。

静态类是指仅包含静态成员的类,当然,除了继承自System.Object的实例成员和可能存在的私有构造函数之外。 某些语言为静态类提供内置支持。 在 C# 2.0 及更高版本中,当类声明为静态时,它将被密封、抽象,并且无法重写或声明实例成员。

静态类是纯面向对象的设计和简单性之间的妥协。 它们通常用于提供其他操作(如 System.IO.File)的快捷方式、扩展方法的持有者或者无法为其确保完整的面向对象包装器的功能(如 System.Environment)。

✔️ 请谨慎使用静态类。

静态类应仅用作框架面向对象的核心的支持类。

❌ 请勿将静态类视为杂项存储桶。

❌ 请勿在静态类中声明或重写实例成员。

✔️ 如果编程语言没有对静态类的内置支持,则 DO 将静态类声明为密封类、抽象类并添加专用实例构造函数。

部分内容 © 2005, 2009 Microsoft 公司。 保留所有权利。

获得皮尔逊教育公司许可后重印自 框架设计准则:可重用 .NET 库的约定、习惯和模式 ,由 Krzysztof Cwalina 和 Brad Abrams 编写,并作为微软 Windows 开发系列中的出版物之一,于 2008 年 10 月 22 日由 Addison-Wesley Professional 出版。

另请参阅