Inheritance
継承(Inheritance)は、サブクラスが親クラスのフィールドとメソッドを再利用・拡張できるようにする仕組みである。is-a 関係を確立し、オブジェクト指向の中核機構である。
目的
コードの再利用と階層モデリング。ただし乱用は脆弱な基底クラス問題を招く。
メカニズム
サブクラスは親のメンバーを継承し、追加やオーバーライドができる。単一継承(Java のクラス)対多重継承(C++/Python)。菱形継承問題には仮想継承(C++)や線形化(Python MRO)が必要である。「継承より合成」が指導原則である。
ユースケース
- オブジェクト指向設計
- 階層モデリング
- コード再利用