抽象クラスとインターフェイスの定義と違い

零下一度
リリース: 2017-07-18 17:52:49
オリジナル
1341 人が閲覧しました

1. 抽象クラスとは何ですか?

複数のクラスに同じ性質の動作 (例えば、人間と動物の歩行など) がある場合、管理を容易にするために、歩行は人間と動物の 2 つの異なるクラスで同じ性質の動作であることを抽象化できます。動作 これらを 1 つのクラスに集約すると、複数のクラスの共通の動作を組み合わせたクラスが生成されます。このクラスは抽象クラスです。 2. インターフェースとは何ですか?

2 つのクラスには、同じ性質の行動だけでなく、異なる性質の行動もあります。たとえば、人間は眠り、鳥は眠り、鳥は飛ぶということは、人間と鳥の間で共通の

行動です。は抽象クラスとして定義でき、飛行は人間と鳥の間で共通の動作ではないため、抽象クラスで定義することはできません。この非共有動作は特別なクラスで定義できます。この特別なクラスがインターフェイスです。

3. 違い

n個のクラスを研究対象として、n個のクラスに共通する動作は抽象クラスで定義され、共有クラスの数がn個に達しない一部のクラスで共有される動作は、インターフェースで定義されます。

抽象クラスは全体的な共通性を反映し、インターフェイスはローカルな共通性を反映します。

抽象クラスとインターフェイスの選択は、関心の範囲によって異なります。関心のある範囲が小さく、この小さな範囲内のオブジェクトの抽象化されたクラスがすべて同じ動作をする場合、

は抽象クラスを使用して共通の動作を管理できます。関心の範囲が比較的大きく、この大きな範囲内で特定の動作が一部のオブジェクトのみで共有される場合、これらの動作はインターフェイスでのみ定義できます。

以上が抽象クラスとインターフェイスの定義と違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート