4.Spring中的反射

Java语言允许通过程序化的方式间接对Class进行操作,Class文件由类装载器装载后,在JVM中将形成一份描述Class结构的元信息对象,通过该元信息对象可以获知Class的结构信息:如构造函数、属性和方法等。Java允许用户借由这个Class相关的元信息对象间接调用Class对象的功能,这就为使用程序化方式操作Class对象开辟了途径。
————stamen

1.反射的调用

  • 得到要调用类的class对象
    (1)Class.forName(className)
    (2)String.class
    (3)object.getClass
  • 得到要调用的类中的方法(Method)
    getdeclaredMethods
  • 实例化class对象
    Class.newInstance
  • 方法调用(invoke)
    Method.invoke(newobject,new Object[]{parmalist}

2.反射的作用

  • 开发各种通用框架
    为了使框架通用化,使框架更加灵活,可以根据配置文件加载不同的对象或类,调用不同的方法
  • 优点
    反射是十分灵活的,它可以动态的创建和编译对象.就像我要更新某些功能,只要在运行的时候编译它就能更新
  • 缺点
    反射首先是增加了代码的复杂度,其次是它的性能问题,它接入方法、对象时比直接输入代码慢.
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容