複素数クラスのリファクタリングを通して、隠蔽化を説明。する方法が考えられる。触られてトラブルの元凶となる場合がある。メソッドを指定することもできる。開発中だけ、値のチェック処理を埋め込むなどの使い方もできる。逆に初期化を忘れたオブジェクトは、後々異常動作の元になる。このため、データの初期化を簡単に扱えるようにコンストラクタ(構築子)を用いる。呼び出したい場合がある。いった場合にはデストラクタを用いる。行うことを総称して、隠蔽化(あるいはブラックボックス化)と呼ぶ。影響を少なくできることを示すために複素数クラスを考える。一般的な方法であれば、実部と虚部で以下のように実装するだろう。上記は要素を指定値で初期化する場合の書き方。乗算はそれなりに複雑(という程でもないけど...)になった。複素数を絶対値と偏角で記述することも可能となる。クラス利用者にも影響が大きい。定義しておけば、クラス利用者に内部変更が解らない様にすることができる。これが、隠蔽化の利点である。気軽に行えるようになる。行うことはリファクタリングなどと呼ばれる。テンプレート生成するようにしてみた。miniOrange。