一段代碼執行相同的邏輯,但有兩個不同的入口點。因此,在一個入口點的情況下它必須使用System.getProperty,而在另一個入口點的情況下它必須使用this.getProperty。理想情況下,我希望暫時和方便地用其中一種情況替換系統,反之亦然,這樣我就不必爲兩個不同的入口點重複邏輯。如何在java中替換System類?
2
A
回答
0
根據需要,您可以讓this.getProperty(
調用System.getProperty(
靜態方法。創建一個布爾型,useSystem
作爲this
的字段。
然後,定義this.getProperty(
如下:
String this.getProperty(String arg){
if useSystem return System.getProperty(arg);
else{
//your logic for returning a property
}
}
獲取屬性時,一定要打電話this.getProperty(
。取決於入口點,您可以將this.useSystem
設置爲true
或false
。
+0
這是一個很棒的實現,謝謝。 – gal
0
您可以使用一個簡單的if else語句:
String property = isEntryPoint ? System.getProperty() : this.getProperty();
假設isEntryPoint是決定其入口點是使用布爾標誌。
相關問題
- 1. 如何在Java中替換「./」?
- 2. 如何在Perl的system()中使用shell的進程替換?
- 3. System類在java中代表什麼?
- 4. Java中System類的位置在哪裏?
- 5. 如何在java中替換「true」和「false」?
- 6. 如何在java中用「\\」替換「\\」
- 7. 如何在Java中替換'null'
- 8. 如何在java中替換字符串?
- 9. 如何在java中替換\ n?
- 10. 如何使庫在java中可替換?
- 11. 如何在Java中不替換
- 12. 如何在php中替換一個類?
- 13. 如何在PHP中替換子類?
- 14. GWT用Java類替換JSPs
- 15. 如何用Java替換XML?
- 16. 如何從Java System Tray中彈出JFrame
- 17. 在java中替換文本?
- 18. 在Java中用「/」替換「\\」
- 19. 在java中的URL替換
- 20. 替換{在java中使用「」,?
- 21. 在java中mod_dav_svn替換?
- 22. 在java中替換JButton
- 23. 在Android中替換/system/lib/libstagefright.so並且無法啓動
- 24. 如何用\替換\。在java字符串
- 25. 如何用jQuery替換類
- 26. 如何動態替換類
- 27. 如何創建一個將替換現有java類的類?
- 28. 如何在java中替換/轉換/展開字符串
- 29. Java如何使用System ClassLoader(無URLClassLoader)從類路徑中的jar中加載類?
- 30. 如何替換一個dll中的類?
顯示代碼請 – sunrize920
@ sunrize920我認爲這個問題在這種情況下足夠論壇化。 OP希望根據入口點在「系統」靜態方法和對象方法之間動態切換。 – hexafraction
@hexafraction是的。謝謝。 – gal