I am interating through classes in a Jar file and wish to find those which are not abstract. I can solve this by instantiating the classes and trapping InstantiationExceptio
It'll have abstract as one of its modifiers when you call getModifiers() on the class object.
This link should help.
Modifier.isAbstract( someClass.getModifiers() );
Also:
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()
Class myClass = myJar.load("classname");
bool test = Modifier.isAbstract(myClass.getModifiers());
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;
}