很多人说反射性能很差,最好换别的方式来实现。
反射的性能真的很差吗?反射导致代码变慢的原因是什么呢?
最好不要用这种情况根本不存在,说出来都是给初学者装逼的,用反射必然是在编译期无法拿到相应的对象,方法,字段情况下,没有人会在可以直接new对象的情况下,故意用反射去调用。
3 回答2.6k 阅读✓ 已解决
3 回答4.1k 阅读✓ 已解决
3 回答3.1k 阅读✓ 已解决
8 回答3.8k 阅读
4 回答2.8k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答2.6k 阅读✓ 已解决
反射性能很差是没错的,但是现在没有几个框架不用反射的。
关键是如何用,理想的情况是应用启动时一次反射,注入,之后不再扫描。如spring的实现。
后果是应用启动较慢,但一旦启动就健步如飞了。
二是需要动态加载的场景,这时要合理地使用缓存,把通过反射查询到的结果缓存起来。结果是第一次访问较慢,以后便和没有用反射一样了。
反射带来了代码的灵活性,减少代码量,减少重复工作,因为代码少了,所以减少了BUG.
最后要说的一点是,人比机器贵,在没有测量的基础上谈性能都是扯蛋。
软件项目开发首先要想是的尽早上线,帮老板省钱,发现慢时加缓存,买内存,换固态盘,加新服务器,哪项都比人员工资便宜。