gpt4 book ai didi

java - 反射有什么问题?

转载 作者:行者123 更新时间:2023-11-30 05:56:37 24 4
gpt4 key购买 nike

我正在开发一个 Eclipse RCP 应用程序。我被告知 UI 部分将由设计师(?)使用 Window Builder PRO 创建,因此我必须为我们的设计师创建的每个 View 创建业务逻辑。

我的第一个想法是为每个 View 创建一个 Controller 类,并在反射的帮助下处理应用程序逻辑(我不知道设计者将创建什么样的小部件)。我认为这将是动态的,因此很高兴,但我们的领导告诉我,我们不会使用反射。

我听到了一个非常简短的解释,这对我来说没有任何意义,所以我的问题是:

为什么使用反射被认为是不好的/不可维护的?

最佳答案

Java 是一种强类型语言,有优点也有缺点。对于所有缺点,它为您提供了非常好的编译时检查。编译时发现的错误/错误是查找和修复成本最低的。

反射是运行时的事情。你不能让编译器检查你使用反射所做的任何事情,因此,如果你使用反射,你就会失去 java 的很多优点。具体来说,您可以编写可以编译但在运行时爆炸的代码。有时用于反射类型代码的术语是“字符串类型” - 您使用的是方法名称(字符串)而不是引用实际方法。

当然使用了反射,但是无论何时使用它,请记住,您正在颠覆java的力量。在您的情况下广泛使用它实际上可能是可以的,只要您的单元测试涵盖足够的案例以使您确信您使用它是安全的。如果实际使用它的代码是相当小的“实用”代码库,我会批准使用它。

关于java - 反射有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6870769/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com