在C#中未指定静态或非静态时,类默认是实例类还是静态类?
C#类默认类型问题解答
嘿,这两个问题本质上是同一个核心问题,我来给你说清楚:
在C#里,当你声明一个类时,如果没有显式添加static关键字,默认是实例类(非静态类)。
给你举两个直观的代码例子:
默认的实例类声明(不需要额外关键字):
public class DefaultClass { // 既可以定义实例成员,也能加静态成员 public string InstanceField; public static string StaticField; }这种类可以正常创建实例使用:
var myObj = new DefaultClass();静态类必须显式标注
static:public static class ExplicitStaticClass { // 只能包含静态成员 public static void ToolMethod() { } public static int SharedValue; }静态类没法被实例化,只能通过类名直接调用成员:
ExplicitStaticClass.ToolMethod();
简单总结:C#类的默认形态是实例类,静态类是需要主动声明的特殊类型,一般用来存放无需实例化就能用的工具方法或共享数据。
内容的提问来源于stack exchange,提问作者I Stand With Israel
相关产品推荐
相关产品推荐

