
5
章
Singleton
パターン
you are here
177
Singleton
static uniqueInstance
//
他の便利な
Singleton
データ
static getInstance()
//
他の便利な
Singleton
メソッド
Singletonパターンは、クラスがインスタンスを
1
つしか持
たないことを保証し、そのインスタンスにアクセスするグ
ローバルポイントを提供する。
Singleton
パターンの定義
Singleton
の典型的な実装がわかったところで、少しくつろいでチョコレートバーで
も味わいながら、
Singleton
パターンの詳細について調べてみることにしましょう。
まず、パターンの簡潔な定義から始めましょう。
驚きはないでしょう。もう少しわかりやすく説明しましょう。
●
実際には何が起こっているのでしょうか。あるクラスにそのクラスのただ
1
つのインスタンスを管理させます。また、他のクラスが勝手に新規インスタ
ンスを作成できないようにもします。インスタンスを取得するには、そのク
ラス自体を経由します。
●
また、そのインスタンスに対するグローバルアクセスポイントを提供します。
つまり、インスタンスが必要になったときには、そのクラスに依頼するだけ
で
1
つのインスタンスが返ってきます。すでに説明したように、
Singleton
が
遅延方式で作成されるように実装できます。これは、リソース集約型のオブ
ジェクトにとっては非常に重要です。
ここでクラス図を見てみましょう。
getInstance() ...