当前位置:  开发笔记 > 编程语言 > 正文

静态类有什么用?

如何解决《静态类有什么用?》经验,为你挑选了2个好方法。

静态类有什么用?我的意思是使用静态类有什么好处以及CLR如何处理静态类?



1> Marc Gravell..:

静态类只表示您不期望或不需要实例.这对于实用程序逻辑很有用,其中代码不是特定于对象的.例如,扩展方法只能在静态类中编写.

在C#2.0之前,你可以拥有一个私有构造函数的常规类; 但是static正式表示你永远不能拥有一个实例(没有构造函数*,并且所有成员都必须是静态的).

(*=请参阅注释链;您可以选择使用类型初始值设定项(静态构造函数.cctor),但您不能拥有实例构造函数(aka .ctor)).



2> ShuggyCoUk..:

.net的编译和元数据模型要求所有函数都在类中定义.这使得反射api的生活变得更容易和简单,因为拥有类的概念及其可见性得到了很好的定义.它还使il模型更简单.

由于这排除了自由函数(不与类相关联的函数),因此可以选择放置没有关联状态的函数的位置(因此需要一个实例).如果他们不需要与他们相关联的状态,也没有任何明确的基于实例的类可以与之相关联并因此在其中定义,那么他们的定义需要有一些成语.

以前最好的方法是在类中定义方法,这些方法的构造函数是私有的,并且类中没有任何函数构造它.

这有点乱(因为它没有说清楚为什么没有注释就完成了)并且反射api仍然可以找到构造函数并调用它.

因此,允许使用静态类,使得用户和类型系统明确了类的用途,即静态方法定义的用途.静态类根本没有构造函数.

推荐阅读
LEEstarmmmmm
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有