为什么依靠反思是不可取的?

问题描述 投票:0回答:1

我读过很多网站和书籍都说过:

在Java中依赖reflection是一个坏主意,你应该寻求其他方法来测试/与封装对象接口。

但是,我找不到任何实际原因,是否与安全管理器不同,从JVM到JVM?或者还有其他原因吗?

java reflection jvm
1个回答
6
投票

反思在很多方面都非常有用。最好的例子之一是创建一个允许第三方插件的程序。反思很棒。但是,使用它会导致许多其他问题的可能性,包括更多的运行时错误,而不是编译错误,调用速度较慢,并且(并不总是一个巨大的问题)IDE的重构和代码分析问题。

一般来说,如果你认为你可以做一些没有反思的事情,那就不用反思就行。有一个非常小的灰色区域,反射是一个好主意。发现灰色区域需要练习。

© www.soinside.com 2019 - 2024. All rights reserved.