遅延読み込み
遅延初期化では、オブジェクトはまずnullをセットされる。そしてオブジェクトの要求イベントごとにオブジェクトがnullかを調べ、nullの場合は動的にオブジェクトを生成して要求元に渡す。以下にC#で記述した例を上げる。
C# にはnull合体代入演算子??=があるのでこれを用いると以下のように書ける。
このメソッドはシンプルな実装であるが戻り値にnullを許容する場合は初期化されていないことを示すために placeholder オブジェクトを利用することもある。