繁体   English   中英

CLR如何处理静态类?

[英]How does the CLR handles static classes?

任何人都可以解释CLR如何处理静态类? CLR是否为内部处理静态类创建了一个单例实例? 如果没有,为什么我们在C#中有一个静态构造函数? (根据我的理解,我们仅使用构造函数来实例化类)

首先,CLR中没有静态类。 CLR对静态类一无所知。 这是C#的特色。

静态类被编译为abstract类和sealed类。 使其abstract化可防止实例化并sealed防止继承。

静态类没有特殊之处,它只是一个简单的类,所有成员都是静态的。

是,CLR在内部创建一个单例实例来处理静态类吗?

,它是抽象的,无法实例化。

如果不是为什么我们在C#中有一个静态构造函数?

首次引用或实例化类型时,将调用静态构造函数。 它用于初始化类的静态成员。

什么时候是在C#中调用的静态构造函数?

首次引用类型时,将调用static构造函数。 它不必是一个static构造函数的static类。

CLR不会创建static类的单例实例。 它确实在初始化后将static变量保留在内存中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM