継承 は、あるクラスの機能を 引き継いで、新しい クラス を作る オブジェクト指向 の仕組みです。共通する部分を「親クラス(基底クラス)」にまとめ、それぞれ違う部分だけを「子クラス(派生クラス)」で足したり書き換えたりします。
<rect x="110" y="150" width="200" height="56" rx="12" fill="#3b82f6"/>
<text x="210" y="174" font-size="12" font-weight="bold" fill="#ffffff">犬(子クラス)</text>
<text x="210" y="192" font-size="11" fill="#ffffff" opacity="0.9">しっぽを振る()</text>
<rect x="410" y="150" width="200" height="56" rx="12" fill="#3b82f6"/>
<text x="510" y="174" font-size="12" font-weight="bold" fill="#ffffff">猫(子クラス)</text>
<text x="510" y="192" font-size="11" fill="#ffffff" opacity="0.9">爪をとぐ()</text>
上の例では、「名前を持つ」「鳴く」という共通機能を親の「動物」に置き、「犬」「猫」はそれを受け継いだうえで、独自の機能を足しています。継承の利点は次のとおりです。
- 重複が減る … 共通処理を親に1回書けばよい。
- 変更が楽 … 共通部分の修正は親を直すだけで、子すべてに反映される。
ただし、継承を深く重ねすぎると関係が複雑になり、かえって分かりにくくなることがあります。近年は「継承より、部品を組み合わせる(コンポジション)ほうが柔軟」と考える場面も増えています。適材適所で使うのがコツです。