単一継承と複数継承
コンテンツ
単一継承と複数継承の主な違いは、単一継承では、派生クラスは単一の基本クラスのみを継承するのに対して、複数継承では、派生クラスは複数の基本クラスを継承することです。
継承は、オブジェクト指向プログラミングであるOOPの最も重要な概念の1つです。継承では、再利用性の概念がサポートされています。再利用性とは、新しいクラスが既存のクラスのプロパティを再利用することを意味します。継承派生クラスでは、基本クラスとアクセスを継承し、指定子はどの基本クラスメンバーが継承されるかを決定します。継承には、単一の継承、階層的な継承、マルチレベルの継承、およびハイブリッドの継承のタイプがあります。単一継承では、派生クラスは単一の基本クラスのみを継承しますが、複数の継承では、派生クラスは複数の基本クラスを継承します。
基本クラスから継承される単一の派生クラスがあります。 public、protected、およびprivateの基本クラスを継承するには、3つの方法があります。アクセス指定子は、基本クラスを継承するために使用されます。単一継承の理由は、単一の親クラスからプロパティと動作を継承するためです。コード指向の再利用性であるオブジェクト指向プログラミングの主な目的は、単一継承を使用することで満たされます。複数の継承と比較して単一の継承を話す場合、単一の継承は複数の継承と比較してより簡単でなければなりません。関数のオーバーライドは、単一継承で使用されます。ランタイムポリモーフィズムは、オーバーライドとして知られています。オーバーライドは、仮想の関数キーワードを使用して実現されます。このキーワードは基本クラスで使用されます。派生クラスが関数を再定義する場合、オーバーライドされた関数は変更できません。 C ++でオーバーライドすると、どのバージョンの関数が呼び出されるかが決まります。単一継承は、C ++、Java、PHP、C#、および視覚ベースで使用されます。
多重継承により、複数の基本クラスを派生できます。つまり、複数の基本クラスのプロパティを取得できます。 1つの派生クラスと複数の基本クラスを持つことができます。基本クラスは、個別のアクセス指定子に言及することで継承されます。多重継承には、対称マージと非対称拡張があります。アダプタパターンがある場合、複数の継承が使用されます。多重継承は、C ++、Python、Perl、Eiffel、Dylan、Curl、Eulisp、Tclで使用されます。複数の継承のためのコードの実装は、単一の継承と比較すると複雑です。
内容:単一継承と多重継承の違い
- 比較表
- 単一継承
- 多重継承
- 主な違い
- 結論
- 説明ビデオ
比較表
基礎 | 単一継承 | 多重継承 |
意味 | 単一継承では、派生クラスは単一の基本クラスのみを継承します | 多重継承では、派生クラスは複数の基本クラスを継承します。
|
安全 | 単一の継承は複数の継承より安全です | 多重継承は実装するのが安全ではありません |
アクセス | 単一継承では、単一クラスの機能が継承されます | 複数の継承では、複数のクラスの機能を継承できます |
ランタイム | 単一の継承にはより多くの実行時間が必要です | 多重継承はより短い実行時間を必要とします |
単一継承
基本クラスから継承される単一の派生クラスがあります。 public、protected、およびprivateの基本クラスを継承するには、3つの方法があります。アクセス指定子は、基本クラスを継承するために使用されます。単一継承の理由は、単一の親クラスからプロパティと動作を継承するためです。コード指向の再利用性であるオブジェクト指向プログラミングの主な目的は、単一継承を使用することで満たされます。複数の継承と比較して単一の継承を話す場合、単一の継承は複数の継承と比較してより簡単でなければなりません。関数のオーバーライドは、単一継承で使用されます。ランタイムポリモーフィズムは、オーバーライドとして知られています。オーバーライドは、仮想の関数キーワードを使用して実現されます。このキーワードは基本クラスで使用されます。派生クラスが関数を再定義するとき、オーバーライドされた関数は変更できません。 C ++でオーバーライドすると、どのバージョンの関数が呼び出されるかが決まります。単一継承は、C ++、Java、PHP、C#、および視覚ベースで使用されます。
多重継承
複数の継承により、複数の基本クラスを派生できます。つまり、複数の基本クラスのプロパティを取得できます。 1つの派生クラスと複数の基本クラスを持つことができます。基本クラスは、個別のアクセス指定子に言及することで継承されます。多重継承には、対称マージと非対称拡張があります。アダプタパターンがある場合、複数の継承が使用されます。 C ++、Python、Perl、Eiffel、Dylan、Curl、Eulisp、Tclでは複数の継承が使用されます。複数の継承のためのコードの実装は、単一の継承と比較すると複雑です。
主な違い
- 単一継承では、派生クラスは単一の基本クラスのみを継承しますが、複数の継承では、派生クラスは複数の基本クラスを継承します。
- 単一の継承は複数の継承よりも安全ですが、複数の継承は安全に実装できません。
- 単一の継承では、単一のクラスの機能が継承されますが、複数の継承では、複数のクラスの機能が継承されます。
- 単一の継承ではより多くのランタイムが必要ですが、複数の継承ではより少ないランタイムが必要です
結論
上記のこの記事では、実装による単一継承と複数継承の明確な違いを確認しています。