我編程在C#在Unity3D並學習對象池,當我遇到了類似樣的代碼來:靜態引用一個類的'this'實例而不曾實例化該類的一個實例?
public class MyClass : Object
{
public static MyClass current;
void Awake()
{
current = this;
}
public void SomeMethod()
{
}
}
public class Other
{
void AnotherMethod()
{
MyClass.current.SomeMethod();
}
}
現在MyClass類是非靜態的,但是參考「當前」,以它的實例「這'(靜態)。 我可以調用公共的非靜態方法,並通過在其他類中使用靜態引用'current'來訪問'this'實例,從而訪問所有其他公共非靜態變量。
但是,如果我從來沒有創建類MyClass的實例,那麼靜態引用指向什麼?
您沒有找到比'Class'更好的名字嗎? – Rohit 2015-04-02 08:30:21
查看http://en.wikipedia.org/wiki/Singleton_pattern。 – Matten 2015-04-02 08:31:03
@kyle對不起!我的錯。我編輯它到MyClass。 – 2015-04-02 09:00:22