一、定义:任何时候都可以获取到class文件的信息(公开的、私有的),包括方法,属性,构造方法。
二、一般用Class.forname("类的引用——")来实现反射。
三、优点:降低耦合,可以通过配置文件注入来修改类的引用,更加方便,快捷。后期维护更方便。
缺点:容易破坏类的封装,消耗额外的资源。
四、例如:我们在加载数据库驱动时就是用Class.forName("oracle.jdbc.driver.OracleDriver");的。
如果此时我们想加载Mysql的驱动,只需要把参数换成MySQL的即可。