- 履歴一覧
- 差分 を表示
- 現在との差分 を表示
- ソース を表示
- 設計パターン/スタティックファクトリメソッド へ行く。
- 1 (2014-05-25 (日) 16:11:18)
- 2 (2014-05-25 (日) 16:32:37)
キーワード†
- コンストラクタ
- staticメソッド
- シングルトン
何か†
キャッチコピー
そのクラスのインスタンスを生成するstaticなメソッドを設けます。
なぜか†
オーバーロードして複数のコンストラクタを設ければ生成について複数の手段を提供することができます。しかしコンストラクタには名前をつけることができません。生成する側がコンストラクタの引数の違いだけでそれぞれのコンストラクタの意図を読み取るのは困難です。そこでインスタンスの生成をstaticなメソッドの機能にすることでメソッド名として意図を表現することができます。
- 名前(メソッド名)をつけられる
また、シングルトンを実装するのにも便利です。コンストラクタの使用を許すということはインスタンスの生成が自由であるということです。このことはシングルトンにしたいそのクラスにとっては不都合です。そこでコンストラクタをprivateにしてstaticなメソッドが代役をすることでインスタンスがシングルトンであることを強制することができます。
- シングルトンを強制する