Orden de ejecución de las garantías de parámetros en Java?


Dada la siguiente llamada a la función en C:

fooFunc( barFunc(), bazFunc() );

El orden de ejecución de barFunc y BazFunc no se especifica, por lo que barFunc() puede ser llamado antes de bazFunc() o bazFunc() antes de barFunc() en C.

¿Java especifica un orden de ejecución de expresiones de argumento de función o como C es que no se especifica?

Author: Mark, 2010-02-04

1 answers

De la Especificación del Lenguaje Java (sobre Expresiones):

15.7.4 Las listas de argumentos se evalúan de izquierda a Derecha

En una invocación de método o constructor expresión de creación de instancia de clase o, las expresiones de argumento pueden aparecer dentro los paréntesis, separados por comas. Cada expresión de argumento parece ser completamente evaluado antes de cualquier parte de cualquier expresión argumental a su derecha.

 60
Author: Michael Easter,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-03-06 18:06:24