29 ms·
The confused terminology isn't related to function calls. In Java, objects are not values. The confused terminology originates before you get to function calls
by furyofantares 12y ago
The confused terminology isn't related to function calls. In Java, objects are not values.
The confused terminology originates before you get to function calls -- you can't ask "are objects passed by value?" without first considering objects as values. Objects can't be stored in variables and objects cannot be the result of an expression. x = y does not copy an object y into an object x because objects are not values -- x and y are variables and they can only hold values, which objects are not.