说一说反射?
1. 首先讲下反射机制:
反射就是在程序运行状态中
,对于任何一个类,都能通过特定的方式方法获取到这个类的属性和方法,并且可以对这些属性、方法进行调用。
说白了,反射就是在程序运行时获取和执行某个类属性或方法的功能。
2. 其次讲一些常用的反射相关的API:
比如获取一个Class对象。Class.forName(完整类名)
。通过Class对象获取类的构造方法
使用class对象创建一个对象,class.newInstance等。
3. 最后可以说一下反射的优点和缺点:
优点就是增加灵活性
,可以在运行时动态获取对象实例。缺点是反射的效率很低
,而且会破坏封装,通过反射可以访问类的私有方法,不安全。