我正在通过Jar文件中的类进行交互,并希望找到那些不是抽象的类。我可以通过实例化类并捕获InstantiationException来解决此问题,但由于某些类具有大量启动,所以性能受到影响。我在Class.java文档中找不到明显的isAbstract()。如何确定Java类是否通过反射抽象
152
A
回答
261
当您在类对象上调用getModifiers()时,它将具有抽象作为其修饰符之一。
这link应该有所帮助。
Modifier.isAbstract(someClass.getModifiers());
另外:
http://java.sun.com/javase/6/docs/api/java/lang/reflect/Modifier.html
http://java.sun.com/javase/6/docs/api/java/lang/Class.html#getModifiers()
28
Class myClass = myJar.load("classname");
bool test = Modifier.isAbstract(myClass.getModifiers());
+0
此外,什么seth说。 :) – Stobor 2009-07-02 07:04:02
0
public static boolean isInstantiable(Class<?> clz) {
if(clz.isPrimitive() || Modifier.isAbstract(clz.getModifiers()) ||clz.isInterface() || clz.isArray() || String.class.getName().equals(clz.getName()) || Integer.class.getName().equals(clz.getName())){
return false;
}
return true;
}
+0
如果它是一个接口和类名是java.util.List你可能会创建ArrayList – 2017-12-21 19:47:11
相关问题
- 1. 如何通过反射来实现抽象类
- 2. 通过反射确定类型是否为单例
- 3. 抽象类的Java反射错误
- 4. 如何通过反射扩展Java类?
- 5. 如何通过引用抽象类 - Java
- 6. 通过反射确定派生类
- 7. 如何判断Java类是否抽象?
- 8. 是否有可能通过Java反射子类检索的类
- 9. 如何确定一个对象是否从一个抽象的通用类
- 10. 通过反射确定方法是否不安全
- 11. 确定反射类型是否可以投射到另一种反射类型
- 12. 是否与抽象类相反?
- 13. Django - 如何确定模型类是否抽象
- 14. 如何通过反射访问抽象父类中的实例字段?
- 15. 如何确定一个字段是否通过反射具有“新”修饰符?
- 16. 通过反射实例化Java对象
- 17. Java`InvocationTargetException`通过反射类实例化
- 18. 如何通过Java反射动态创建Java类?
- 19. Java:如何确定抽象类型的具体类型?
- 20. 通过反射确定类成员的类型
- 21. 如何通过反射使用BluetoothHeadset类
- 22. 是否可以通过反射
- 23. Java反射,类对象
- 24. 如何通过ScalaMock将受保护的抽象方法抽象java类存根?
- 25. 的Java通过反射
- 26. .NET反射/抽象的HTML?
- 27. 确定是否属性是通过反射和循环列表项
- 28. Java:通过反射访问对象的bean类型方法
- 29. 如何通过反射正确实例化内部类?
- 30. 如何使用反射来确定一个类是否是内部的?
谢谢!一点点说明:你不能使用“class”作为变量名,也许你想改变你的例子。 – 2010-11-24 17:07:28