Java 参照型の値渡し

JavaにはC言語のような参照渡しは存在しない。

なるべく参照型の値渡しとかせめてオブジェクト参照渡しとか違いが分かるように言うのが良いだろう。

void foo () {
    String a = "Foo";
    bar(a);
    System.out.println(a); // Foo
}

void bar (String b) { // String b = a; が実行されていると考えると分かりやすい
    b = "Bar";
}

上は下記の処理と同等である。これでBarが出力されると思う人はまずいないだろう。

String a = "Foo";
String b = a;
b = "Bar";
System.out.println(a); // Foo
web拍手
This entry was posted in 未分類. Bookmark the permalink.

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>