definition
The java.lang.Class class instance represent classes and interfaces in a running Java application. It has no public constructor.
example
ClassTest.java
@Test
public void testClassForName() {
try {
Class cls = Class.forName("Person");
Person person = cls.getConstructor(String.class).newInstance("test");
System.out.println(person.getName());
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Person.java
public class Person {
private String name = null;
public Person() {
this.name = "abc";
}
public Person(final String name) {
this.name = name;
}
public String getName() {
return this.name;
}
}
usage
java.lang.Class is helpful when you apply it to the design patterns or some other scenarios.