我可以讓類的靜態字段保持對其自身實例的引用嗎?如果是這樣,它會在沒有其他人保持參考的情況下在jvm中保持活力嗎?靜態實例變量引用類的實例
public class StatTest {
private static StatTest statTest;
public static StatTest getStatTest() {
if (statTest== null) {
statTest= new StatTest();
statTest.init();
}
return statTest;
}
private StatTest() { }
}
這是一種實現* singleton *模式的方法。請注意,這不是線程安全的(即,如果您從多個線程調用StatTest.getStatTest(),事情可能會中斷)。爲了比較不同的單例實現(包括一些線程安全的實現),請查看http://stackoverflow.com/questions/7121213/singleton-instantiation/7121246#7121246,這是我前一段時間寫的一個答案。 –
謝謝你所有的答案!我現在意識到這是一個非常知名的模式。我從前認出了單身人士的名字,但我從未讀過它。現在可以很容易地找到關於如何進行的信息。非常感謝! – joaerl