0

Joshua Bloch の『Effective Java』を読んでいます。それは、それが述べている項目1で私を混乱させます

静的ファクトリ メソッドの 2 つ目の利点は、コンストラクターとは異なり、呼び出されるたびに新しいオブジェクトを作成する必要がないことです。

静的ファクトリ メソッドは、呼び出されるたびに新しいオブジェクトを作成するためのものではありませんか?

//constructor
Orange(){
}

//static factory method
static Orange staticFactoryMethod(){
    return new Orange;
}

コンストラクターを呼び出したり、staticFactoryMethodインスタンスを作成したりしませんOrangeか?

Orange orange=new Orange();

Orange orange=Orange.staticFactoryMethod();
4

3 に答える 3

1

Integer.valueOf(int i).If is within the range -128 to 127を見てください。iこのメソッドは新しい Integer オブジェクトを作成せず、キャッシュから値を返します。

于 2013-05-18T05:05:03.847 に答える