parameters : Java Glossary


parameters are always passed by value not by reference. The called method gets a copy of each primitive and a copy of the pointer to each object. The called method can therefore not change any local variables in the caller. However, it can change the contents of objects (which includes strings and arrays) passed to it. Some people may argue that counts as call by reference, however, a callee cannot make the callers variables point to different objects, just change the contents of objects. Objects are always accessed by reference, (literally via a reference) even when parameters are not involved. You can kludge call by reference by passing values back to your caller inside an array or by returning a freshly minted object full of values.

Difference Between Parameters and Arguments

Many people use the terms parameter and argument interchangeably, but they are different. In the definition of a method, you describe the parameter types and variable names by which they will be called inside the called method. When you invoke the method, the values you pass are called the arguments.

Parameters refer to the local names in the callee. Arguments refer to the values passed by the caller.

Learning More

This page is posted
on the web at:

Optional Replicator mirror
on local hard disk J:

Canadian Mind Products
Please the feedback from other visitors, or your own feedback about the site.
Contact Roedy. Please feel free to link to this page without explicit permission.

Your face IP:[]
You are visitor number