プログラミング応用a 第11回 『継承の基礎1』 11-4. 製図ソフトの問題解決例 |
製図ソフトで扱う2次元図形のスーパークラスとして Fig2D というクラスを考え, Triangle や Rectangle はそのサブクラスとして定義し,各サブクラスで draw ( )メソッドを
適切にオーバライドすれば良い(下図)。
List 12, List 13, List 14, List 15, List 5
継承を使うことによって,図形を増やすには Fig2D のサブクラスを定義するだけで良く,スーパークラス Fig2D で書かれた箇所は変更する必要は一切無い。
このことを表したのが下図である。
●まとめ
以上のことから,スーパークラスにふさわしいクラスを考え,プログラムは出来るだけスーパークラスを使って記述する。
そして,バリエーションを得るには,新しいサブクラスを定義して,サブクラスの中でメソッドをオーバライドしてやればよい。