ホームページ >バックエンド開発 >PHPチュートリアル >PHPの抽象クラスとインターフェースの違い

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-13 12:19:031147ブラウズ

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

1. インターフェイスの使用は、キーワードimplements を介して行われます。抽象クラスを使用するには、キーワード extends を使用します。もちろん、キーワード extends を使用してインターフェイスを継承することもできます。

2. インターフェース内ではメンバ変数(クラス静的変数を含む)は宣言できませんが、クラス定数は宣言できます。さまざまなタイプのメンバー変数を抽象クラスで宣言して、データのカプセル化を実装できます。


3. インターフェイスにはコンストラクターがありませんが、抽象クラスはコンストラクターを持つことができます。

4. インターフェイスのメソッドはデフォルトで public ですが、抽象クラスのメソッドは private、protected、または public に変更できます。

5. クラスは同時に複数のインターフェースを実装できますが、クラスは 1 つの抽象クラスのみを継承できます。

抽象クラスまたはインターフェイス。

  • 密接に関連するオブジェクトによって採用されるモデルを作成したい場合は、抽象クラスを使用できます。無関係な多数のオブジェクトに採用される機能を作成する場合は、インターフェイスを使用します。
    • 動作を複数のソースから継承する必要がある場合は、インターフェイスを使用します。
    • すべてのクラスが共通の動作実装を共有することがわかっている場合は、抽象クラスを使用し、その中でその動作を実装します。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。