Java のクラス継承は Liskov 置換原則に従います。
Javaのクラス継承は、以下の原則に従います。
- シングル継承の原則: Javaのクラスは1つの親クラスしか継承できません。言い換えれば、Javaでは多重継承はサポートされていません。
- オープン・クローズド原則:継承するクラスは継承によって機能を拡張できるよう開放的であるべきだが、既存のクラスの動作を変更できないように閉じられているべきである。
- リスコフの置換原則:サブクラスのオブジェクトは、スーパーオブジェクトに置き換えてもプログラムに不具合が発生しないこと(サブクラスはスーパーを完全に置き換えられるべき)。
- 依存倒置の原則(Dependency Inversion Principle):子クラスは具象実装クラスではなく、抽象クラス・インタフェースに依存すべきである。
- インターフェース分離原則(ISP):クラスは、必要なインターフェースを実装すべきであり、不要なインターフェースの実装を強制されるべきではない。
- 合成/集約再利用原則:可能な限り合成再利用原則を使用します。これは、既存のクラスを新しいクラスに組み合わせることによって機能の再利用を実現することであり、継承によって機能の再利用を得るのではなく、
これらの方針はすべて、コードの保守性、拡張性、再利用性の向上に役立ちます。