黑马程序员技术交流社区

标题: 反射会导致程序性能严重下降-谁给我解释解释 [打印本页]

作者: 房建斌    时间: 2014-3-7 22:54
标题: 反射会导致程序性能严重下降-谁给我解释解释
刚看张孝祥老师的反射视频,说道Class类的newInstance会缓存一个Constructor的无参实例,然后用缓存的这个constructor实例化一个对象。这里张老师说反射会导致程序性能严重下降,可是我脑子不够用了,实在有点不太理解。有人能给我解释解释吗。
作者: 何清林    时间: 2014-3-8 00:08
      呵呵,我刚好还记得,其实老师说反射会导致程序性能严重下降的说法是一次合理推理,就是说用Class类的newInstance获取对象也是通过调用无參的构造方法,并把这个构造方法缓存起来。二下一次再获取一个对象的时候按道理是不是也要调用构造方法?可是通过看底层代码我们知道,下次使用缓存的构造函数。我们就思考了:缓存一个资源——构造方法是不是要占用内存啊?下次要构造函数的时候在获取一次不就完了吗?那为什么还要这么做呢?由此老师推断获取构造函数不容易,消耗资源,由此老师得出结论反射会导致程序性能严重下降。你明白了吗?




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2