【发布时间】:2009-12-17 18:51:28
【问题描述】:
最近,我与团队负责人讨论了使用临时变量与调用 getter 方法的问题。很长一段时间以来,我一直认为,如果我知道我将不得不多次调用一个简单的 getter 方法,我会将它放入一个临时变量中,然后改用该变量。我认为这在风格和性能方面都会更好。然而,我的领导指出,在 Java 4 和更新的版本中,这在某种程度上是不正确的。他坚信使用较小的变量空间,因此他告诉我调用 getter 方法与使用临时变量相比对性能的影响非常小,因此使用 getter 更好。然而,我并不完全相信他的论点。大家觉得呢?
【问题讨论】:
-
JVM 最喜欢内联 getter 调用。您应该首先为人类可读性编写代码,然后如果存在性能问题,请查看优化
-
如果对性能有疑问,请测量它!这并不难,并且可以让您考虑到这些性能问题。 (如果这个方法需要 0.00000001 秒的时间来执行,这真的很重要吗?)
-
一些支持临时变量的可靠论据:stackoverflow.com/a/19446785/1553851
标签: java performance