私がこのコードを持っているとしましょう。
public class Data {
public static int x, y;
// ...
}
// ...
public static ArrayList<Data> myData = new ArrayList<Data>();
さて、私のメインクラスから
Data thisData;
thisData.initData();
myData.add(thisData);
thisData.changeData();
myData.add(thisData);
// ... repeat and repeat and repeat
問題は、静的プレフィックスがコードの動作をどのように変更するかということです。つまり、フィールドxとyが静的であると宣言されているため、myDataには常に同じオブジェクトが入力されますか?または、myDataには常に新しいオブジェクトが入力されますか?言い換えると、add()ステートメントはどのようにオブジェクトを追加しますか?それを複製しますか?
ありがとう。