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. 如何通过另一个测试才能运行测试类?
- 4. 当一个java类扩展另一个类时,<>的目的是什么?
- 5. 从另一个JUnit测试类运行JUnit测试类
- 6. PHP:确定类是否是另一个类的扩展
- 7. Java中的每个类扩展Object.Then如何扩展其他类。因为一个类只能扩展一个类
- 8. 如何在Scala中扩展一个扩展另一个类的类型参数的java类?
- 9. PHPUnit:如何断言一个类扩展了另一个类?
- 10. 如何扩展由另一个类实例化的java类?
- 11. 当测试类扩展另一个具有依赖关系的类时设置一个测试 - PHPUnit
- 12. 静态类是否扩展了另一个类?
- 13. AS3检查类是否扩展了另一个类
- 14. 确定是否JavaScript类扩展了另一个类
- 15. 检查类构造函数是否扩展了另一个类
- 16. 测试一个类是否是另一个共同类lisp的子类
- 17. Java如何扩展一个隐藏类
- 18. 是否有可能扩展一个库类扩展MY_Controller类
- 19. 如何创建一个类和另一个类扩展该类在反应js
- 20. 如何在多个测试类中运行一组junit测试?
- 21. Java:在运行时扩展类
- 22. 如何测试一个字符串类型是否等于另一个javascript
- 23. 声明一个扩展另一个多态类的多态类
- 24. 一个类是否可以扩展两个或更多类
- 25. 如何在JavaScript中扩展一个类
- 26. 如何在python中扩展一个类?
- 27. Java:我如何检查另一个类文件是否正在运行?
- 28. 如何从另一个类运行Java类?
- 29. 从运行一个测试类
- 30. 从另一个单元扩展类
感谢您的回答! – trusktr 2013-10-05 23:48:48