私はこのようなものを持っています:
public class Test {
public static MyObject o4All = null;
public MyObject o4This = null;
public void initialize() {
// create an instance of MyObject by constructor
this.o4This = new MyObject(/* ... */);
// this works, but I am wondering
// how o4All is internally created (call by value/reference?)
Test.o4All = this.o4This;
}
}
私は、静的メソッドによってのみ静的変数を割り当てたり変更したりする必要があることを知っています。しかし、java-docs ( http://docs.oracle.com/javase/tutorial/java/javaOO/classvars.html ) によると、オブジェクト参照を使用できます。
クラス メソッドは、インスタンス変数またはインスタンス メソッドに直接アクセスできません。オブジェクト参照を使用する必要があります。
o4This のプロパティを変更するとどうなりますか? o4All のプロパティも間接的に変更されますか?