基本クラスとは何ですか?
スーパークラスとも呼ばれるベースクラスは、1つ以上の派生クラスの基礎として機能するコンピューターオブジェクトです。継承できるコンピューター言語は、基本クラスを作成できます。正確なタイプに応じて、基本クラスは初期化(オブジェクトに初期値を割り当てる)が独自に割り当てられる場合とそうでない場合がありますが、常に継承するクラスに何らかの共通の機能を与えます。基本クラスが持つことができる派生クラスまたはサブクラスの数に制限はありませんが、コンピューター言語に応じて、派生クラスが持つことができる基本クラスの数に制限がある場合があります。派生クラスを1つのベースしか持たないことを許可する言語は、単一の継承を実施すると言われていますが、派生クラスに複数のベースクラスに複数の継承を使用することを許可する言語。
コンクリートベースクラスは独自に初期化できます。つまり、基本クラスのタイプのオブジェクトを作成できます。クラスの例の場合派生クラスの例2のベースであり、タイプの例2のオブジェクトとタイプのオブジェクトを両方とも作成できます。タイプの例のオブジェクトは、そのオブジェクトタイプを明示的に呼び出すことによってのみ作成できます。タイプのオブジェクトを作成しても、タイプの二次オブジェクトは作成されません。いずれの場合も、作成されるオブジェクトタイプは、それ自体のみのインスタンスを構築します。
対照的に、抽象的なベースクラスは独自に初期化することはできません。つまり、基本クラスのオブジェクトを単独で作成することはできません。クラスExample3が派生したクラスExample4の抽象的なベースである場合、タイプの例4のオブジェクトのみを作成できます。タイプexample4にはタイプexample3のデータが含まれていますが、example3のタイプのみのオブジェクトを作成しようとすると、エラーが発生します。この機能は、特にクラスの例3に厳密に規制する必要があるプライベートデータが含まれている場合、時々有用です。
depeそれが現れる言語について、基本クラスはわずかに異なる動作を持つことができ、著しく異なる名前を持つことができます。 Java®では、ベースクラスは常にその名前で言及されますが、C ++では、構造に応じて仮想クラスと呼ばれます。名前と機能の違いは、使用されているコンピューター言語の点で重要ですが、クラスの背後にある原則の大きな違いを意味するものではありません。基本クラスは、言語に関係なく、派生クラスの一般的な機能とデータをカプセル化するために常に使用されます。