Java にはシャローコピーとディープコピーがあります。
前者がポインタの書き換えで後者が実体の書き換えです。
C が分かってると分かりやすいのです。
Obj o1, o2; o1 = o2 = new Obj (); o1 = o2;シャローコピー
Obj o1, o2; o1 = new Obj (); o2 = o1.clone ();配列をコピーしたりするには、 clone でもいいですが、 arraycopy も使えます。
System.arraycopy (from, 1, to, 3, 5);ってやると、 from の 1 番目から to の 3 番目に 5 個コピーできます。