112
A
回答
206
你是否在尋找:
Super.class.isAssignableFrom(Sub.class)
73
如果你想知道是否不Class
擴展了另一個,使用Class#isAssignableFrom(Class)。對於你的榜樣,那就是:
if(B.class.isAssignableFrom(A.class)) { ... }
如果你有興趣在一個實例是否是特定類型的,使用instanceof
:
A obj = new A();
if(obj instanceof B) { ... }
注意,這些將返回true
如果class/instance是類型層次結構的成員,並不限制直接指定超類/子類關係。例如:
// if A.class extends B.class, and B.class extends C.class
C.class.isAssignableFrom(A.class); // evaluates to true
// ...and...
new A() instanceof C; // evaluates to true
如果您要檢查直接超類/子類的關係,Tim has provided an answer爲好。
34
+0
感謝您的回答,並感謝您從問題中使用'a'和'b' – Armand 2010-08-18 09:13:54
相關問題
- 1. 如何確定一個類是否擴展了Java中的另一個類?
- 2. 用於檢查一個類是否擴展另一個類的Java方法?
- 3. JAVA是否可以動態地讓一個類擴展另一個類?
- 4. 如何通過另一個測試才能運行測試類?
- 5. 當一個java類擴展另一個類時,<>的目的是什麼?
- 6. phpunit測試類擴展了另一個類
- 7. 測試類擴展誰另一個類(PHPUnit的)
- 8. testNG測試類可以從另一個類擴展嗎?
- 9. 從另一個JUnit測試類運行JUnit測試類
- 10. Junit測試一個擴展WizardPage的類
- 11. PHP:確定類是否是另一個類的擴展
- 12. Java中的每個類擴展Object.Then如何擴展其他類。因爲一個類只能擴展一個類
- 13. Java通用編程:確定類是否擴展另一個
- 14. 如何在Scala中擴展一個擴展另一個類的類型參數的java類?
- 15. PHPUnit:如何斷言一個類擴展了另一個類?
- 16. SCSS擴展一個類與另一個
- 17. 如何擴展由另一個類實例化的java類?
- 18. 如果一個類擴展了另一個類,擴展類可以被初始化而不是擴展它嗎?
- 19. 當測試類擴展另一個具有依賴關係的類時設置一個測試 - PHPUnit
- 20. 靜態類是否擴展了另一個類?
- 21. 檢查類是否擴展了另一個類
- 22. 檢查類構造函數是否擴展了另一個類
- 23. 確定是否JavaScript類擴展了另一個類
- 24. AS3檢查類是否擴展了另一個類
- 25. 測試一個類是否是另一個共同類lisp的子類
- 26. Java如何擴展一個隱藏類
- 27. 是否有可能擴展一個庫類擴展MY_Controller類
- 28. 如何快速測試TypeMirror是否是另一個子類型
- 29. 如何使用一個Java類文件來測試另一個
- 30. 如何創建一個類和另一個類擴展該類在反應js
感謝您的回答! – trusktr 2013-10-05 23:48:48