我有兩個非常相似的靜態類,我相信應該共享相同的代碼庫,但我一直運行在c#中的限制。如何在靜態類之間共享代碼?
接口不能聲明靜態方法,靜態方法不能是虛擬等
最後,我只想下面的一個更好看的版本:
public class StaticCoroutine {
private static MonoBehaviour runner;
public static void Start(IEnumerator coroutine) {
if (runner == null) {
runner = new GameObject("[Static Coroutine Runner]").AddComponent<StaticCoroutineRunner>();
}
runner.StartCoroutine(coroutine);
}
public static void Stop(IEnumerator coroutine) {
if (runner != null) runner.StopCoroutine(coroutine);
}
}
public class StaticCoroutineInfinite {
private static MonoBehaviour runner;
public static void Start(IEnumerator coroutine) {
if (runner == null) {
runner = new GameObject("[Static Coroutine Infinite Runner]").AddComponent<StaticCoroutineRunner>();
Object.DontDestroyOnLoad(runner.GameObject);
}
runner.StartCoroutine(coroutine);
}
public static void Stop(IEnumerator coroutine) {
if (runner != null) runner.StopCoroutine(coroutine);
}
}
適合[codereview](http://codereview.stackexchange.com/)更好。 – Sinatr
也許你應該在http://codereview.stackexchange.com/上發佈這個。 –
爲什麼你必須使用'static'類? – Aron