Even objects are passed by value. In this case, the reference (not the whole stack object) s1 and s2 are copied and passed to the method processStacks. Inside the method, if you change the reference (x2=x1) then the change is not reported outside the method because the reference were copied... That is, outside the method, s1 and s2 will still refer to their initial stack. (Imagine the nightmare it would be to find a bug if reference passing was allowed in Java. I find it much more better that way, but it's a matter of personal taste, of course.) HIH
Thanks Valentin, Could you please explain me how we can differentiate whether the parameter is whole object or reference ? Arun
Joined: Aug 26, 2001
"whole" objects are never passed as parameters only (a copy of) the reference to the object is passed. There is an interesting document about that: Javaranch: pass-by-Value Please HIH [ January 22, 2002: Message edited by: Valentin Crettaz ]
need some qustions or code to practice this. can you send me some links or resources ?
Originally posted by Valentin Crettaz: "whole" objects are never passed as parameters only (a copy of) the reference to the object is passed. There is an interesting document about that: Javaranch :-P ass-by-Value Please HIH