Javaのお勉強



値の受け渡し@Java

メソッドの値の受け渡しです。

以下、二つのパターンがあります。


Stringを作成します。
文字は、「AAA」とします。

メソッドsetStrにて、作成したStringを渡します。
setStrにて文字を「BBB」とします。

Stringを表示します。
「AAA」と表示されます。

これは、setStrには、Stringの複製は渡されます。
複製の値の参照値は変更されますが、
複製元の参照値は変更されていないからです。


TestCalssを作成します。
TestClassのsetStrにて文字「AAA」を設定します。

メソッドsetTestClassにて、TestClassを渡します。
TestClassのsetStrにて文字「BBB」を設定します。

TestClassの文字を表示します。
「BBB」と表示されます。

これは、setTestClassには、TestClassの複製が渡されます。
複製のメソッドにより、TestClassの文字の参照値が変更されます。
結果として、変更した文字が表示されます。

Main

public class Main {

public static void main(String[] args) {

//①String
String str = "AAA";

//setStrを実行
setStr(str);
System.out.println(str);

//②TestClass
TestClass testClass = new TestClass();

//TestClassのsetStr実行
testClass.setStr("AAA");

//setTestClass実行
setTestClass(testClass);
System.out.println(testClass.getStr());

}

static private void setStr(String str) {
str = "BBB";
}

static private void setTestClass(TestClass testClass) {
testClass.setStr("BBB");
}

}


TestClass

public class TestClass {

private String str;

public TestClass() {
}

public void setStr(String str) {
this.str = str;
}

public String getStr() {
return this.str;
}
}




Copyright (C) 2008-2026 Javaのお勉強. All Rights Reserved.