しかし、例えば

public class SomeClass{
private String myName;
public String getName(){
return myName;
public void setName(String name){
myName = name;
}
}
}

というクラスのインスタンスがあったとして、getName() メソッドで
String 型の返値を得たとしよう。
しかし、その返値はあくまでも「この文字列情報は、SomeClass の
インスタンスの中にありますよ〜」って情報しか持ってないから
(具体的に文字列の内容が何なのかという情報を持っていない)、
もし setName(String) メソッドが使われて myName に何らかの
変更が加わった場合、それを参照している変数にも影響が及ぶ。

だから、返値は何でもかんでも新しく生成されて出てくるものと
思うのはやめるべし。