在這個論壇中有經驗的產品開發人員,Web開發人員和專家,請分享您的經驗。什麼時候我們應該去java中的靜態類,變量和方法
0
A
回答
3
靜態類:頂級類不能聲明爲靜態。只有成員和嵌套頂級類可以定義爲靜態。
如果您希望在沒有明確委派的情況下使用包含類的變量和方法,則聲明成員類。當你聲明一個成員類時,你只能在聲明這個成員類的外部類的對象的上下文中實例化該成員類。如果你想刪除這個限制,你可以聲明成員類是一個靜態類。當你用一個靜態修飾符聲明一個成員類時,它將成爲一個嵌套的頂級類,並且可以像上面解釋的那樣用作一個普通的頂級類。
嵌套的頂級類是帶有靜態修飾符的成員類。嵌套的頂級類與其他任何頂級類相似,只不過它在另一個類或接口中聲明。通常將嵌套的頂級類用作組合相關類的便捷方式,而不創建新的包。
靜態方法:主要用於在實例/應用程序之間共享的實用程序。一個很好的例子是預定義的Math類中的許多實用方法:靜態變量:要在實例之間共享的信息。主要用作常量。
1
0
靜態變量:當你永遠需要有一個變量在類的所有實例。 這個變量將在實例之間共享。
靜態類:我通常嘗試避免靜態類並使用單例。 (內部類是例外:如果您不需要訪問外部類變量,則更好地使內部類變爲靜態)
+0
您不能在Java中聲明頂級類爲靜態類。 – 2010-08-17 16:04:48
相關問題
- 1. JAVA:什麼時候該類應該是靜態或動態的
- 2. 什麼時候應該在基類中聲明靜態方法?
- 3. 我們什麼時候去Java中的接口或抽象類?
- 4. 什麼時候應該寫靜態方法?
- 5. 什麼時候應該使用靜態方法?
- 6. 什麼時候應該使用公共靜態方法
- 7. 什麼時候應該去Silverlight和XNA?
- 8. 我應該去靜態方法還是非靜態方法?
- 9. 什麼時候應該去接口,什麼時候去抽象類?
- 10. 什麼時候使用靜態變量和自我關鍵字
- 11. 我什麼時候應該重寫等方法在Java中
- 12. 什麼是靜態方法和變量?
- 13. 我們什麼時候應該上課,什麼時候不應該上課
- 14. 什麼時候應該寫在asp.net類的靜態函數
- 15. Java - 爲什麼ClassName.this.variable在變量是靜態的時候工作?
- 16. 什麼時候應該創建一個靜態類?
- 17. 什麼時候應該使用未初始化的靜態最終變量?
- 18. 什麼時候應該在PHP類中聲明變量?
- 19. 我們應該什麼時候把弱者變成強者?
- 20. 同一類中的Java靜態變量和非靜態變量
- 21. 我們什麼時候應該使用MongoDB和傳統的RDMBS?
- 22. 我們什麼時候知道我們應該使用符號?
- 23. 什麼時候gae中的servlet靜態變量?
- 24. 什麼時候應該在一個類中使用靜態方法,並且有什麼好處?
- 25. 什麼時候去接口,什麼時候去抽象類
- 26. 我們應該什麼時候使用jQuery append()和appendTo()?
- 27. 什麼時候我們不應該使用[weak self]和[unowned self]?
- 28. PHP mysql_close()和mysql_free_result() - 我應該在什麼時候使用它們?
- 29. 靜態類中的靜態變量和非靜態類中的靜態變量
- 30. 爲什麼靜態類不能有非靜態方法和變量?
感謝然後何時使用靜態最終和靜態變量 – 2010-08-17 15:59:49
@Suresh:當你想跨實例共享它。 – BalusC 2010-08-17 16:06:22