While creating an object of using Class.forName() I am getting following Errors. Can you please confirm where I am doing wrong.
Exception in thread "main" java.lang.ClassNotFoundException: ABC
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at RandomPrograms.ClassObjectFromString.main(ClassObjectFromString.java:32)
ClassObjectFromString.java
import java.lang.reflect.Constructor;
class ABC {
ABC() {
System.out.println("ABC called!!! ");
}
ABC(String a) {
System.out.println("ABC called : " + a);
}
}
class ClassObjectFromString {
public static void main(String[] args) throws Exception {
Class<?> clazz = Class.forName("ABC");
Constructor<?> ctor = clazz.getConstructor(String.class);
Object object = ctor.newInstance(new Object[] { "Message" });
}
}