Class ss=Class.forName("com.other.day03.reflect.Person");//代表person类在内存中的字节码对象
//创建对象
Constructor constructor = ss.getConstructor(null);
constructor.newInstance(null);
Constructor con =ss.getConstructor(String.class);//传入的参数的数据类型
//创建对象
Constructor constructor = ss.getConstructor(null);
constructor.newInstance(null);
Constructor con =ss.getConstructor(String.class);//传入的参数的数据类型
con.newInstance("李四");
-----
// 获得类中私有的构造方法
@Test
public void test011() throws Exception{
Class cl=Class.forName("com.other.day03.reflect.Person");
Constructor c=cl.getDeclaredConstructor(int.class);
c.setAccessible(true);//强制反射
Person p=(Person) c.newInstance(23);//传入实参
System.out.println(p.name);
}
本文详细探讨了Java反射机制的应用,包括如何通过反射获取类的字节码对象、实例化对象、访问私有属性和方法等核心操作。通过具体代码示例展示了反射在Java开发中的强大能力。
1万+

被折叠的 条评论
为什么被折叠?



