ホームページ  >  記事  >  バックエンド開発  >  PHPの抽象クラスとインターフェースの違い

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

WBOY
WBOYオリジナル
2016-08-08 09:25:19967ブラウズ

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

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


3. インターフェイスにはコンストラクターがありませんが、抽象クラスにはコンストラクターがあります。

4. インターフェイスのメソッドはデフォルトでパブリック型ですが、抽象クラスのメソッドはプライベート、プロテクト、またはパブリックに変更できます。

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

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

  • いくつかの密接に関連したオブジェクトによって採用されるモデルを作成したい場合は、抽象クラスを使用できます。無関係な多数のオブジェクトに採用される機能を作成する場合は、インターフェイスを使用します。
    • 動作を複数のソースから継承する必要がある場合は、インターフェイスを使用します。
    • すべてのクラスが共通の動作実装を共有することがわかっている場合は、抽象クラスを使用し、その中でその動作を実装します。

以上、PHPの抽象クラスとインターフェースの違いを内容も含めて紹介しましたが、PHPのチュートリアルに興味のある方の参考になれば幸いです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。