Ordine di esecuzione di parametri garanzie in Java?
-
18-09-2019 - |
Domanda
Dato il seguente chiamata di funzione in C
:
fooFunc( barFunc(), bazFunc() );
L'ordine di esecuzione dei barFunc
e BazFunc
non è specificato, quindi barFunc()
può essere chiamato prima bazFunc()
o bazFunc()
prima barFunc()
in C
.
Lo Java
specificare un ordine di esecuzione delle espressioni argomento della funzione o C
piace è che non specificato?
Soluzione
linguaggio Java specifiche (sulle espressioni):
15.7.4 Liste di argomenti vengono valutati da sinistra a destra
In un metodo o costruttore invocazione o espressione creazione istanza di classe, espressioni argomento può apparire all'interno le parentesi, separate da virgole. Ogni espressione argomento sembra essere pienamente valutata prima che qualsiasi parte di qualsiasi argomento di espressione alla sua destra.