一,本章目标
①可以使用Class了完成对象的实例化操作
②通过Constructor类调用有参构造方法完成对象的实例化操作
二,具体内容
Class主要是反射的源头,不光可以取得对象所在类的信息,也可以直接通过Class类的方法进行对象的实例化操作,使用关键字new为对象实例化,如果现在已经实例化好了Class对象,则就可以通过Class类中提供的:
public T newInstance() throws InstantiationException,IllegalAccessException方法来完成实例化操作。
通过以上代码可以发现,即使不适用new关键字也可以实例化一个对象。但是使用以上操作的时候必须有一点需要注意,在操作的类中必须要存在无参构造方法。
所以可以发现,不管什么方法,实例化都要使用构造方法的支持。
以上代码实现了通过有参构造方法实例化对象的功能,但是,从实际角度来看,如果想要通过反射来实例化对象,最好是在类中存在无参构造方法。
三,总结
本章功能是Class类用的最多的
使用Class实例化对象的时候,必须保证类中存在一个无参构造否则无法使用
如果要使用类中的有参构造方法,需要使用Construsct类。