In Java, when an object reference is passed as an argument, what's really being passed is a copy of the reference. This copy becomes local to the method (so in that sense, it's a value); but it still points to the same object (so in that sense, it's a reference).
But remember, Strings are immutable. (See link above.)
"We're kind of on the level of crossword puzzle writers... And no one ever goes to them and gives them an award." ~Joe Strummer sscce.org
You showed up just in time for the waffles! And this tiny ad:
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop