静态类和非静态类的主要差别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了静态类和非静态类的主要差别相关的知识,希望对你有一定的参考价值。

如有雷同,不胜荣幸,若转载,请注明

静态类和非静态类的主要差别

主要差别在于静态类不能实例化,静态类编译器可以运行检查确保不是偶然的加入实例成员,C#编译器会自己主动把它标记为sealed。静态类中不能创建非静态的方法。即静态方法中仅仅能创建静态方法。但在非静态类中可以调用静态方法

静态类的主要特性:

1:仅包括静态成员。

2:无法实例化。

3:是密封的。

4:不能包括实例构造函数。

5:非静态类能够包括静态的方法、字段、属性或事件。

6:静态方法和属性不能訪问其包括类型中的非静态字段和事件

7:静态方法仅仅能被重载,而不能被重写,由于静态方法不属于类的实例成员。

8:C# 不支持静态局部变量(在方法内部定义静态变量)。


非静态类在使用时必需要实例化。每次使用时都要进行实例化,普通情况下使用比較频繁的类,能够使用静态类,比方LogClass,ConfigClass等等,个人总结,疏漏之处还请高手指点


以上是关于静态类和非静态类的主要差别的主要内容,如果未能解决你的问题,请参考以下文章

C# 静态类和非静态类的区别

静态内部类和非静态内部类的区别

静态类和非静态类的区别

静态类和内部类的区别是啥

MSIL 静态类在 IL 定义上和非静态类的差别

静态类和非静态类方法