给出的是以下 Java 代码示例:
builder.something()
.somethingElse()
.somethingMore(builder.getSomething());
Java 语言规范是否保证getSomething()
被调用after the somethingElse()
方法或者 Java 实现是否允许重新排序执行?
The JLS,第 15.12.4 节,保证在计算参数之前计算目标引用。
在运行时,方法调用需要五个步骤。首先,可以计算目标参考。其次,对参数表达式进行求值。 ...
The somethingElse
必须首先评估方法,以计算目标参考somethingMore
方法。然后builder.getSomething()
被评估以提供参数值somethingMore
. Then somethingMore
可以被执行。
由于此规则,不允许 JVM 重新排序执行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)