オブジェクトのコピー(コピーコンストラクタを使用してint
インスタンス変数を持つ)は元のオブジェクトと同じインスタンス変数を取得しますか?もしそうなら、私は元のオブジェクトとコピーオブジェクトが同じインスタンス変数を参照しているのだろうかと思っていました。以下の例を見てください。既存のBankAccount
のコピーを作成すると、両方とも同じインスタンス変数balance
とaccountNumber
を参照していますか? オブジェクトのコピーと元のオブジェクトのインスタンス変数
public class BankAccount {
private static int bankAccountCount = 0;
private double balance = 0.0;
private int accountNumber = 1;
public BankAccount() {
accountNumber += bankAccountCount ;
bankAccountCount++;
}
public BankAccount(double startBalance) {
this();
balance = startBalance;
}
public BankAccount(BankAccount accountToCopy) { // copy-constructor
balance = accountToCopy.balance;
accountNumber = accountToCopy.accountNumber;
プリミティブは参照型ではありません。ここには別個のインスタンス変数があります。 –
同じ質問を2回聞かないでください。元の質問にさらに情報を追加する場合は、質問の下にある[編集]リンクを使用します。 –