爲什麼POJO對象不應該擴展任何類,實現接口或者有任何註釋爲什麼POJO應該是普通而不是特殊的?
-1
A
回答
4
爲什麼POJO對象不應該延伸? POJO是類別with those properties的標籤。如果類沒有這些屬性,那麼它不是POJO類。
這有點像問自行車爲什麼不能只有一個車輪。答案就是因爲它只有一個輪子,那就是獨輪車而不是自行車。
1 - 本示例經過仔細挑選,以避免使用訓練輪的自行車具有挑戰性的術語問題。 :-)
12
這是關於自由。
當你寫一個類,不擴展其他類,也沒有實現一個接口:你可以做任何你想要的 - 沒有人規定你可以和不能做什麼。除了傳統的Java語法外,你不受其他任何東西的約束。考慮這個提供的靈活性。
POJO的這一特性允許它們獨立測試和開發。你需要考慮的是你的班級應該做什麼。
POJO應該是普通的,因爲它們的用處是基於它們是普通的事實。
相關問題
- 1. 爲什麼使用ROLAP而不是普通的MySQL?
- 2. 爲什麼使用authentication_token而不是普通的認證過程?
- 3. 什麼是特殊情況下不應該關閉報表?
- 4. 爲什麼string.Join(string,object [])是特殊的?
- 5. 爲什麼get_default_prefix @classmethod,而不是隻是一個普通的方法
- 6. 爲什麼我應該使用XMLLIst而不是簡單的XML?
- 7. 爲什麼MonadIO特定於IO,而不是更通用的MonadTrans?
- 8. 反應:爲什麼getDefaultProps方法,而propTypes是一個普通的對象?
- 9. 爲什麼我應該使用Amazon Kinesis而不是SNS-SQS?
- 10. 爲什麼我應該使用var而不是類型?
- 11. 爲什麼我應該使用IHttpActionResult而不是HttpResponseMessage?
- 12. 爲什麼我應該使用JLabel而不是Image?
- 13. 爲什麼我應該使用1bit位域而不是bools?
- 14. 爲什麼我應該使用$ _GET和$ _POST而不是$ _REQUEST?
- 15. 爲什麼我應該使用goog.ui.Checkbox而不是常規輸入?
- 16. 行在SSRS中不可見,而應該是。爲什麼?
- 17. Python:爲什麼我應該使用next()而不是obj.next()?
- 18. 爲什麼我應該使用ViewModel後綴而不是VM?
- 19. 爲什麼應該從0開始而不是從1開始?
- 20. 爲什麼我應該使用整數而不是浮點數?
- 21. 爲什麼我應該使用threading.Timer而不是Loop + Sleep?
- 22. 爲什麼我應該使用Flex而不是JQuery?
- 23. Android:何時/爲什麼我應該使用FrameLayout而不是Fragment?
- 24. 爲什麼我應該使用`mod_wsgi`而不是python啓動?
- 25. 爲什麼我應該使用python 3.1而不是python 2.6?
- 26. 爲什麼我應該使用content_tag而不是「常規」html?
- 27. 爲什麼我應該使用formlayout/formdata而不是setBounds?
- 28. 在VB.NET中,爲什麼我應該使用Select而不是If?
- 29. 爲什麼我應該使用operator.itemgetter(x)而不是[x]?
- 30. 爲什麼我應該使用reactjs而不是jquery?
我不喜歡這樣的短語,但... http://en.wikipedia.org/wiki/Plain_Old_Java_Object – Makoto