Java反射

(一)前篇注意:

①:Class对象是所有反射API的入口。(Class类是泛型类)

(二)反射概念what?:

①:反射是java语言的一个特性,它允程序在运行时(注意不是编译的时候)来进行自我检查并且可以操作内部的成员信息

(三)为什么  why?:

优点:①能够在运行时获取实例,灵活性和拓展性增强;帮我们做重复的事情【eg:dao类型的增删改查】

           ②与Java动态编译结合,功能强大。

缺点:①使用反射的性能较低   【无法执行某些JVM优化】

           ②使用反射相对来说不安全   【可能需要安全管理器运行时,可能不存在的运行权限】

           ③破坏了类的封装(可以通过反射获取这个类的私有方法和属性) 【内部曝光】

(四)应用的列子:

①JavaBean 是 reflection 的实际应用之一。【帮我们做那些重复的事情,eg  dao类】

②三大框架就应用了反射机制。

(五)怎么用  how?:【所有类的对象都是Class实例

①根据对象获得完整的包名和类名

②框架中SSM,SSH中一些web.xml等文件的加载。

③JavaBean的实现。

原文地址:https://www.cnblogs.com/not-alone/p/8330515.html