我正在開發一個Web應用程序,其中有一個名爲getData()
的實用程序方法,我將其作爲一個靜態方法。 到現在爲止它很好,但是這種名爲getData()
的靜態方法需要來自setter和getters的一些數據。 所以現在我的問題是我們可以讓setter/getters成爲靜態的嗎?是否允許使用靜態setter/getters?
回答
如果你的屬性是static
然後Getters and setters
也將是static
..它的一切都取決於你..
如果獲取/設置靜態字段,則獲取者和設置者可以是靜態的。
是的,可以根據您的需要將getter/setters設置爲靜態。或者,也許我不明白你的問題!
是你可以和任何那個對象/變量的定義,他們看起來像
private static String abc = "";
該類
,你可以使用get/set方法
public static String getString(){
return abc;
}
public static void setString(String newAbc){
abc = newAbc;
}
訪問這個對象,你可以使用這個喜歡這種方式Test.getString(); or Test.setString("new string");
你也可以定義這個get/set方法作爲普通的方式,而不需要定義static關鍵字,但是你需要創建該類的實例。靜態用於創建可以訪問其成員的類的實例。
當然可以。 Getter和setter只是普通的方法。 它們可以是靜態的或不是。
唯一的約束是,不要在靜態方法中使用非靜態字段和方法。由於靜態方法和靜態字段屬於一個類,而非靜態方法和字段屬於該對象。他們是我認爲的兩個不同的層次。
如果使用任何非靜態屬性或屬性,則無法使getter和setter方法爲靜態方法。如果您使用Eclipse和Netbeans之類的IDE,他們會提醒您,甚至可能不會編譯代碼。
當然,你可以讓getter和setter成爲靜態的(帶有適當的靜態字段)。
但是:當你正在處理一個Web應用程序(多個並行的請求 - 多線程),你一定有一個線程問題在這裏 - 這是不是線程安全除非你照顧(如使用) 。
如何獲取靜態獲取地圖?這一行動是否需要同步? – Amalgovinus
取決於您是否要更改地圖的數據。使地圖最終決定,你會沒事的! – kaiser
- 1. 是否有允許靜態和動態打字的語言?
- 2. Timepicker不是靜態的允許
- 3. 是否允許在Java中聲明頂級類爲靜態
- 4. 是否允許全局靜態標識符以單個_開頭?
- 5. 使用許多靜態函數是否有任何副作用?
- 6. CORS是否允許使用「Prefer」標頭?
- 7. BQL是否允許使用DatePart?
- 8. 是否允許使用foreach這樣做?
- 9. nasm:是否允許使用「global _start:」?
- 10. iOS:是否允許使用libIOKit.dylib
- 11. CORS請求是否允許使用Origin?
- 12. 是否允許使用匿名函數?
- 13. 爲什麼靜態塊中不允許使用靜態字段聲明?
- 14. 靜態數組,可變大小允許?
- 15. ASP MVC允許靜態HTML文件
- 16. 靜態斷言結構允許嗎?
- 17. 允許靜態方法訪問DAO
- 18. 允許Cuda中的靜態大陣列
- 19. 允許CORS靜態內容在MVC
- 20. 允許來自特定的靜態IP
- 21. 使用「最終靜態」還是「靜態最終」是否正確?
- 22. 設計 - 不允許使用抽象靜態方法
- 23. 嵌套靜態類中不允許使用擴展方法嗎?
- 24. 爲什麼在靜態方法中不允許使用「this」?
- 25. 爲什麼applet中允許使用非靜態方法?
- 26. soundcloud:是否允許使用api-v2,並且是否有文檔?
- 27. 保留UITouch:是否允許?
- 28. 是否允許類轉換?
- 29. 是否允許LEA [x],[y]?
- 30. MapKit是否允許StreetView?
您無法從靜態方法訪問實例字段。 – StKiller