9
guavaの作成者がコンストラクタをプライベートとして定義し、静的メソッドを定義する理由を説明してくださいcreate()
オブジェクトを作成するにはどうすればよいですか?guava:コンストラクタの代わりにメソッドcreate()を使用する理由
guavaの作成者がコンストラクタをプライベートとして定義し、静的メソッドを定義する理由を説明してくださいcreate()
オブジェクトを作成するにはどうすればよいですか?guava:コンストラクタの代わりにメソッドcreate()を使用する理由
有効なJavaアイテム1:コンストラクタの代わりに静的なファクトリメソッドを検討してください。
staticファクトリメソッドの利点のいくつかは、次のとおりです。
本の内容は[オンラインで入手可能](http://my.safaribooksonline.com/book/programming/java/9780137150021/creating-and-destroying-objects/ch02lev1sec1)です。 – david
私は、エンドユーザーの視点から最も重要な利点を追加します。明確な名前が付けられています。 'newHashMapWithCapacity(100)'は 'new HashMap(100)'よりはるかに明確です。 –
@JBNizet:私たちはJDKコレクションの実装にこれらのメソッドを提供していますが、自国のコレクション型では、実際には 'create'よりも詳細なファクトリ名はありません。 (私はそれが正しい呼び出しであるかどうか確信していません、あなたが記述した理由のために。) –