あるクラスが別のクラスのすべての公開プロパティと動作を持てるようにするメカニズム。
あるクラスが別のクラスのすべての動作と属性を持ち、これらの属性と動作の数が多く、他のクラスによって共有されている場合、この クラスは次のように定義できます。サブクラスは、コードの再利用を実現するために別のクラスを継承します。
サブクラスは親クラスの非プライベートなメソッドとプロパティを持ちます。
コンストラクター: パラメーター化されたコンストラクターが明示的に作成されると、デフォルトのパラメーターなしコンストラクターはクリアされます。 サブクラスのパラメータなしコンストラクタは、デフォルトで親クラスのパラメータなしコンストラクタを呼び出します。親クラスにパラメータなしコンストラクタがない場合、コンパイルは通りません。 追記: 抽象クラスにはコンストラクターがありますが、インターフェイスにはコンストラクターがありません。まずメンバー変数を初期化してから、コンストラクターを呼び出します。
単一継承: Java では、クラスは extends キーワードを通じて 1 つの親クラスのみを継承できます。
メソッドの書き換え: 参考。
結合の程度: サブクラスは親クラスを継承します。親クラスの変更はサブクラスに大きな影響を与えます。
クラスは継承機会を1つしか持たず、継承により結合が増加するため、継承機会を維持し結合を減らすために、1つのクラスのみが他のクラスと同じになります。メソッドが多数ある場合は、継承の使用を検討してください。それ以外の場合は、インターフェイスを実装するか、デコレータ パターンなどのデザイン パターンを採用することを検討してください。
インターフェースは複数のインターフェースを継承できるため、他のインターフェースの抽象メソッドを持ち、継承された抽象メソッドを実装する必要はありません。
以上が継承とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。