Design-pattern-null-object-pattern
デザインパターン-ヌルオブジェクトパターン
Null Objectパターンでは、NULLオブジェクトがNULLオブジェクトインスタンスのチェックを置き換えます。 null値のチェックを行うのではなく、Nullオブジェクトは何もしない関係を反映します。 このようなNullオブジェクトは、データが利用できない場合のデフォルトの動作を提供するためにも使用できます。
Null Objectパターンでは、実行するさまざまな操作を指定する抽象クラス、このクラスを拡張する具体的なクラス、およびこのクラスの実装を何も提供しないnullオブジェクトクラスを作成し、null値をチェックする必要がある場合は無意識に使用します。
実装
操作を定義する_AbstractCustomer_抽象クラスを作成します。 ここでは、_AbstractCustomer_クラスを拡張する顧客クラスと具象クラスの名前。 渡された顧客の名前に基づいて、_RealCustomer_または_NullCustomer_オブジェクトを返すファクトリクラス_CustomerFactory_が作成されます。
デモクラス_NullPatternDemo_は、_CustomerFactory_を使用して、Null Objectパターンの使用方法を示します。
ステップ1
抽象クラスを作成します。
AbstractCustomer.java
ステップ2
上記のクラスを拡張する具象クラスを作成します。
RealCustomer.java
NullCustomer.java
ステップ3
_CustomerFactory_クラスを作成します。
CustomerFactory.java
ステップ4
_CustomerFactory_を使用して、渡された顧客の名前に基づいて_RealCustomer_または_NullCustomer_オブジェクトを取得します。
NullPatternDemo.java
ステップ5
出力を確認します。