在Java中的参数保证执行顺序?
-
18-09-2019 - |
题
鉴于以下函数调用在C
:
fooFunc( barFunc(), bazFunc() );
和barFunc
的BazFunc
执行顺序没有指定,所以barFunc()
可以bazFunc()
bazFunc()
之前barFunc()
或C
之前被调用。
是否Java
指定的功能参数表达式执行或类似C
的顺序是未指定?
解决方案
从 Java语言规范(表达式上的):
15.7.4参数列表进行评估左到右
在的方法或构造函数调用 或类实例创建表达式, 参数表达式可能出现内 括号,用逗号分开。 每个参数表达似乎是 任何任何部分之前充分评估 参数表达式在其右侧。
不隶属于 StackOverflow