回答
將單身存儲在文件中。
不需要您需要一個地方來存儲單身人士。
依賴注入是一種可能性。由於您的問題不是特定於任何編程語言,因此我沒有發佈特定於框架的語法(例如Ninject)
使用DI,您只需將存儲器從靜態變量移動到DI容器。此外,你正在失去單身人士的許多好處 - 強制執行單個實例。使用DI,您依賴於用戶始終使用DI框架,該框架可以在內部強制實施單實例規則,但無法阻止DI之外的代碼創建其他實例。 – 2010-11-05 04:00:26
作爲面試問題的答案,其本身更像是一種'讓我們看看候選人如何思考'的類型,這很好。 – akf 2010-11-05 04:35:52
@akf,接受記者採訪時,它能夠解釋該方法的肯定和否定是很重要的。 – 2010-11-05 13:39:46
- 1. 如何在不創建新變量的情況下引用現有變量?
- 2. 如何在不使用「set!」的情況下實現「letrec」?
- 3. 如何在不使用AppDomains的情況下實現.net插件?
- 4. 如何在不使用^的情況下實現XOR?
- 5. 如何在不使用req和res.locals的情況下在NodeJS中實現ThreadLocal變量功能?
- 6. 如何在不使用變量的情況下編程scala DSL?
- 7. 如何在不使用變量值的情況下創建類實例?
- 8. 在不使用Singleton的情況下封裝昂貴的資源
- 9. 我可以在沒有任何實例變量的情況下使用decltype嗎?
- 10. 如何在不改變變量的情況下進行遞歸
- 11. 在不使用密碼的情況下在Java中實現RSA
- 12. 如何在不使用類型的情況下使用GET傳遞變量?
- 13. 在不使用Modernizr的情況下實現這個結果?
- 14. 如何在不使用OpenGL ES的情況下使UIImage變亮?
- 15. SPSS - 變量的情況下
- 16. 如何在不使用android的情況下實現android應用程序?
- 17. 如何在不進行輪詢的情況下實現std :: when_any?
- 18. 如何在不崩潰編譯器的情況下實現MutableCollectionType?
- 19. 如何在不暴露字段的情況下實現equals?
- 20. 如何在不首先實現的情況下測試接口?
- 21. 這個函數如何在不遞歸的情況下實現?
- 22. 我可以在這種情況下使用全局變量嗎?
- 23. 如何在某些情況下使用JSDoc記錄可變數量的參數
- 24. 在不使用函數的情況下增加一個變量
- 25. 如何在不改變整個項目的情況下實現wxScrolledWindow?
- 26. 如何在不帶前綴的情況下需要變量
- 27. Erlang如何在不使用OS線程的情況下實現併發性?
- 28. 如何在不使用STL的情況下實現C++字典數據結構
- 29. Android:如何在不使用地圖活動的情況下實現com.google.android.gms.maps.MapView
- 30. Cosmicmind/Material:我如何在不使用AppDelegate.swift的情況下實現PageTabBarController?
爲什麼要關注使用靜態全局變量?只要你正確使用單例方法,你就沒事。 – prolink007 2010-11-05 03:08:13