开发者学堂课程【Java 高级编程:反射实例化对象】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/20/detail/377
反射实例化对象
通过 newInstance ()方法实例化 Person 类对象
从JDK1.9 之后 newInstance ()被替代了
反射实例化对象
获取 Class 对象之后最大的意义实际上并不是在于只是一个对象的实例化操作形式,更重要的是 Class 类里面提供的反射实例化方法(代替了关键字 new )
在 JDK 1.9以前的实例化:
public T newInstanceO throws InstantiationException ,legalAccessException
JDK 1.9 之后:clazz .getDeclaredConstructor().newInstance();
范例:通过 newInstance ()方法实例化 Person 类对象.
现在通过反射实现的对象实例化处理,依然要调用类中的无参构造方法。
其本质等价于“类对象= new 类()”,也就是说当于隐含了关键字 new ,而直接使用字符串进行了替代。
范例:从 JDK1.9 之后 newInstance ()被替代了
因为默认的 Class 类中的 newInstance ()方法只能够调用无参构造,所以很多开发者会认为其描述的不准确,于是将其变换了式(构造方法会讲解