Pregunta

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 barFunc() puede ser llamado antes de bazFunc() o bazFunc() antes barFunc() en C.

¿Tiene Java especificar una orden de ejecución de expresiones de argumento de función o C gusta es que no especificado?

¿Fue útil?

Solución

Desde el del lenguaje Java Specification (en expresiones):

  

15.7.4 listas de argumentos se evalúan de izquierda a derecha

     

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

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top