JavaのString
クラスのように、インターンをサポートするクラスが必要です。クラスのインスタンスを作成するときに、同じパラメータを持つ参照がすでに存在する場合は、既存の参照を返す必要があります。それ以外の場合は、新しい参照を返す必要があります。このようなこと:インターンをサポートするオブジェクトを作成するための良いパターン?
Foo a = new Foo(5);
Foo b = new Foo(5);
Foo c = new Foo(6);
a == b
a != c
1)は、既存のオブジェクトのテーブルを維持するために工場の仕事である、または表は、一般的に、クラス自体の中だけの静的変数のですか?
2)既存のオブジェクトのテーブルは何ですか?インスタンスが要求されるたびに検索するオブジェクトのセットですか、またはキーがオブジェクトで値がパラメータであるマップですか?
'String'のソースを見ましたか? – Paul
Stringは、そのinternメソッドにネイティブコードを使用しているようです。 – Jim
私は不思議です:インターナショナルをサポートするオブジェクトがなぜ必要でしょうか? –