Что происходит, когда метод возвращает значение?
Допустим есть такой метод:
int val() {
return 1 + 1;
}
Если его вызвать, не сохраняя в переменную таким образом:
val();
Что в этот момент происходит и почему компилятор не выдает ошибку?
Я думал, что при вызове метода, он просто заменяется значением, которое возвращает.
То есть, если написать такую строку кода:
System.out.println(val());
То val(); заменяется значением, которое этот метод возвращает и код начинает выглядеть так:
System.out.println(2);
Но это не так. Ведь если написать просто число в коде, не присваивая его переменной, компилятор выдаст ошибку error: not a statement
Так что, метод не просто заменяется значением, которое он возвращает, а происходит что-то другое.
Объясните, пожалуйста