java.lang包中的Object類位於類層次結構樹的頂部。每個類都是Object類的後代,直接或間接的。您使用或編寫的每個類都繼承Object的實例方法。 爲什麼我們需要一個類,它是java中所有其他類的超類?爲什麼java中的每個類都是對象的子類?
1
A
回答
2
因爲這是如何設計Java的。 Java將所有東西(除了pirmitives之外)都視爲包含自定義對象的對象。
將所有新創建的類都從對象中擴展出來是有好處的。它允許在創建新對象時自動使用常用方法和屬性。
一些常用方法例如:toString()
和equals()
..等等
1
在所有類型之間都有一個共同的行爲/接口用於比較等操作是很有用的。
當您想要創建包含或可以包含不同類型的數組或其他集合時,它也很有用。
1
將Object
作爲所有Java類的隱式基類有助於您編寫不依賴於精確類型的代碼,如集合,生成字符串表示的類等。請參閱java.lang.Object
的文檔以獲取每個類支持「開箱即用」的方法列表。
這絕不是所有所需的功能語言:還有其他語言沒有強制通用子類。這樣做是語言設計師的選擇。
相關問題
- 1. 爲什麼對象類是java中的超類
- 2. 什麼是類型的子對象?
- 3. 爲什麼我的子類被認爲是一個抽象類?
- 4. 爲什麼不是每種類型的對象都可序列化?
- 5. 哪個類不能成爲java中的子類,爲什麼?
- 6. 爲什麼我的數組中的每個其他對象都是空白的?
- 7. Java中的每個子類都從兩個類(Object及其超類)繼承?
- 8. 爲什麼.Net框架中的每個類都沒有對應的接口?
- 9. 爲什麼Haskell中的每個類型都不是Eq的一部分?
- 10. 爲什麼Java的Integer類的兩個對象不能等於
- 11. Java類什麼都不做
- 12. 爲什麼我的超類對象調用其子類方法?
- 13. 什麼是「[對象類型]」
- 14. 什麼是每個.NET類
- 15. Java抽象類 - 是否每個類都得到變量的副本
- 16. 爲什麼對象類不是空值
- 17. 什麼是類的本身是對象?
- 18. Java:爲什麼這個子類有效?
- 19. 什麼是抽象數據類型?它是Java中的類嗎?
- 20. 爲什麼Visualizer會說每個原子都是隱藏的?
- 21. 爲什麼Liftweb的`bootstrap.liftweb.Boot`是一個類,除了一個對象?
- 22. 爲什麼所有克隆的對象都不是gameobject Sphere下的子對象?
- 23. 爲什麼我們使用引用子類對象的超類型對象
- 24. Java - 每個接口都是抽象類嗎?
- 25. 爲什麼不讓每個Scala類都成爲一個案例類?
- 26. 爲什麼在Java中不允許將子類對象的子類集合轉換爲超類對象的超類集合?
- 27. 什麼是Java中「java.lang.Enum」類型對象的身份和狀態?
- 28. 這是什麼類型的對象在Java中?
- 29. 檢查Class對象是否是Java中另一個Class對象的子類型?
- 30. 在java中由超類變量引用的子類對象有什麼用?