Java API中單例模式的最佳示例是什麼?運行時類是單身人士嗎?java中的單例類API
7
A
回答
8
只有兩個例子浮現在腦海:
也參見:
更新:回答PeterMmm的(當前已刪除?)評論(這問我是怎麼知道的,這是一個單),檢查Javadoc和源代碼:
public class Runtime {
private static Runtime currentRuntime = new Runtime();
/**
* Returns the runtime object associated with the current Java application.
* Most of the methods of class <code>Runtime</code> are instance
* methods and must be invoked with respect to the current runtime object.
*
* @return the <code>Runtime</code> object associated with the current
* Java application.
*/
public static Runtime getRuntime() {
return currentRuntime;
}
/** Don't let anyone else instantiate this class */
private Runtime() {}
它返回每次都有相同的實例,並且它有一個private
構造函數。
0
注意單身人士應小心使用和反思。在實施之前考慮反對單身人士和你的情況的論點。過度使用單身是一種反模式 - 與全局變量類似。
我用他們過去,看到一些利益給他們。當我試圖與他們一起進行測試驅動的開發時,我也非常惱火,因爲這是他們邪惡的一個領域。從它們繼承的結果會導致一些難以理解的行爲 - 至少在Python中 - 我不確定在Java中。一般來說,你只是不要這樣做。所以就像開始時看起來這是一個好主意,然後你陷入陷阱並意識到,或許這畢竟不是那麼好。
0
這是用於Swing:SingleFrameApplication。檢查出this presentation它奇妙地描述它是如何工作的。
相關問題
- 1. java單例類
- 2. Java類的單個實例
- 3. Java中的單例類問題
- 4. Java單例內部類
- 5. 錯誤單例類在Java
- 6. java單例類vs最終類
- 7. C++單例類的getInstance(如Java)
- 8. 參數化類的java單例
- 9. 在java中釋放單例的實例
- 10. python中的單例類
- 11. Flex中的單例類
- 12. Java rest api中的資源實例
- 13. Java從內部類單例中訪問外部類變量
- 14. 與Java中的同一類的單獨實例衝突
- 15. 使用單例類在java中的junit測試用例中調用方法
- 16. 無法實例類型的實例在Java中的Weka類
- 17. Java8中的forkjoinpool stream api是單例嗎?
- 18. 如何根據java中的屬性文件調用單例類的實例?
- 19. 在Ruby中的單例類中調用單例方法?
- 20. 使用「this」與不在Java的單例類中使用它?
- 21. 需要關於java中單例類的信息
- 22. Swig中的簡單類型映射示例java
- 23. 服務類應該是java中的單例嗎?
- 24. 使用Java對Weka中的單實例進行分類
- 25. java中單實例類的最佳實踐是什麼?
- 26. Java郵件API例外
- 27. Akka集羣Java API示例
- 28. Hyperic java api示例代碼
- 29. Google docs api for Java(例外)
- 30. 爲單例類
Swing/AWT API也有一些。單身人士應小心使用。這就是爲什麼在整個Java API中沒有那麼多 – Hardcoded 2010-06-17 11:58:09
您可以在同一個VM中擁有多個「桌面」對象。來自不同站點的Sun/Oracle JRE小程序將具有不同的「桌面」。 'Runtime'不帶任何狀態,所以最起碼不是一個單身(並且你會注意到它的使用是毫無意義的冗長的)。 – 2010-06-17 17:07:40
@Tom:「桌面」確實更多一些。關於'運行時',我想知道同樣的東西......在JDK 1.0的黑暗時代,他們必須考慮*某些東西*。 – BalusC 2010-06-17 17:20:20