@Test
public void test1() throws Exception {
Class<Person> clazz = Person.class;
Constructor<Person> cons = clazz.getConstructor(String.class, int.class);
Person person = cons.newInstance(
"Tom"
, 12);
System.out.println(person);
Field age = clazz.getDeclaredField(
"age"
);
age.setAccessible(
true
);
age.set(person, 10);
System.out.println(person.toString());
Method show = clazz.getDeclaredMethod(
"show"
);
show.invoke(person);
System.out.println(
"==================================="
);
Constructor<Person> cons1 = clazz.getDeclaredConstructor(String.class);
cons1.setAccessible(
true
);
Person p1 = cons1.newInstance(
"Bruce"
);
System.out.println(p1);
Field name = clazz.getDeclaredField(
"name"
);
name.setAccessible(
true
);
name.set(p1,
"Jarry"
);
System.out.println(p1);
Method nation = clazz.getDeclaredMethod(
"nation"
, String.class);
nation.setAccessible(
true
);
Object nation1 = (String) nation.invoke(p1,
"China"
);
System.out.println(nation1);
}