1
A
回答
2
Java的確如此。
Python沒有。
Python是強烈動態類型的。你創建一個對象,它將永遠是那種類型。但是,指向該對象的變量可以指向任何類型的任何對象,並且不必知道它指向的是什麼類型的對象。
編輯根據在評論的問題:
這允許您定義可以由預期字典或列表,或其他類型的,很容易的大部分功能被使用的類。所以如果我想創建一個特殊類型的列表,當你迭代它時,按照自定義順序返回對象,我所要做的就是聲明一個支持__getitem__
,__iter__
和其他一些方法的類,以及其他類將使用它,就像它是一個列表一樣。
有關Python中抽象基類的信息,請參閱http://docs.python.org/glossary.html#term-abstract-base-class。在使用中,它們與Java中的抽象基類很相似。
8
Python與Ruby一樣使用Duck Typing,這是一種動態類型的風格。 Java顯然是靜態類型的,類型檢查是在編譯時完成的。
相關問題
- 1. 檢查python中的java對象類型
- 2. Python類型檢查和繼承問題
- 3. Python:檢查變量類型
- 4. Java 8類型檢查Collectors.groupingBy
- 5. Java WatchEvent檢查類型?
- 6. 類型檢查和範圍檢查
- 7. DynamicMethod的和類型檢查
- 8. 在Python 2.7和Python 3.3之間的函數中檢查類型
- 9. Python與Java相比如何進行類型檢查?
- 10. 類(類型)檢查
- 11. 檢查類型
- 12. 的Python:類型檢查裝飾
- 13. 檢查作爲通配符Python類型
- 14. python:檢查函數的參數類型
- 15. 如何檢查變量的類型? Python
- 16. Python編譯時類型檢查
- 17. Python測試檢查實例類型
- 18. 檢查python中的無效類型
- 19. Django模型繼承和類型檢查
- 20. C#泛型和類型檢查
- 21. java中的輸入類型檢查
- 22. Java:嚴格類型檢查失敗?
- 23. Java 8通用類型檢查
- 24. Java通用 - 子類型檢查?
- 25. 檢查類的屬性和類型
- 26. GHC-api和類型檢查類限制
- 27. SQL查詢 - 每種類型的功能和檢查類型的最新檢查
- 28. 將變量用於Java中的任何類型和檢查類型?
- 29. Python檢查 - 查找GAE中屬性的數據類型db.model類
- 30. C++和Python-檢查類型的PyObject失敗
這樣會讓Java變得更好吧?這似乎是更多的空間與Python的錯誤 – Misty
這是一個功能。它給你更多的權力。您可以定義一個類似列表的類,並且可以由任何接受列表的方法使用。您可以創建一個類似文件的類,並允許您將數據提供給需要文件對象的代碼或從中獲取數據。 – agf
「更好」是在旁觀者的眼中。和你一樣,我認爲缺乏強大的類型檢查會導致更多的錯誤 - 或者,當我編寫代碼時會發生。 (也許我需要編譯器作爲一個柺杖。)但是我遇到了很多喜歡Python或PHP的非強類型的程序員。 – Marvo