O'Reilly logo
  • You Wang thinks this is interesting:

The Java programming language always uses call by value. That means that the method gets a copy of all parameter values. In particular, the method cannot modify the contents of any parameter variables passed to it.

From

Cover of Core Java® Volume I—Fundamentals, Tenth Edition

Note

Java always call by value, which means the original value won't be changed. This means primitive values won't change and object reference won't change ( but object may change inner states.