1

以下の2行を除いて、私はすべて大丈夫だという私の最後の最後のJava割り当て。その意図は何ですか、どうすればそれを行うことができますか? それについての手がかりを与えてくれる人は誰でも大歓迎です。

これにプリミティブを使用することは許可されていません

特定のラッパー クラス オブジェクト (Integer、Char、Double など) を直接割り当てないでください。オブジェクトのコピーを使用します。

昨日、私はアシスタントと話しました。彼は、次のように値を割り当てると悲しんでいます。

整数 asd ;
asd = 新しい整数 (10);

これの代わりに:

整数 asd ;
asd = 10;

オブジェクトをコピーし、値を割り当てます。次に、(私が思うに) 古いレコードがガベージ コレクターの対象になります。

4

3 に答える 3

1

コンストラクターを使用してオブジェクトを直接作成するのではなく、 Integer #parseIntInteger#valueOfなどのメソッドを使用する必要があることを意味していると思います。

于 2012-11-18T10:22:11.530 に答える
0

彼らは釣りをしているように聞こえます

object.clone();
于 2012-11-18T10:21:25.113 に答える
0

シリアル化およびシリアル化解除する必要がある場合があります。その後、オブジェクトの別のコピーを取得できます。https://stackoverflow.com/a/2836659/940313を参照してください

ところで、デフォルトでObject.clone()はであるため、対応するクラスが実際に実装して.protectedclone()public

于 2012-11-18T10:35:58.700 に答える