我试图this
在静态方法中使用关键字,但编译器不允许我使用它.
为什么不?
这很简单.关键字"this"返回对包含它的类的当前实例的引用.静态方法(或任何静态成员)不属于特定实例.它们存在而不创建类的实例.有关静态成员以及在MSDN文档中使用它们的原因/ 时间的更深入解释.
另外请注意,从Static方法中,您可以访问该类的静态成员.使下面的示例有效,有时非常有用.
public static void StaticMethod(Object o) { MyClass.StaticProperty = o; }
静态方法是特定于类的,不是特定于实例的."this"表示运行时类的实例,因此不能在静态上下文中使用它,因为它不会引用任何实例.相反,应该使用类的名称,并且您只能访问类中的静态成员