ホームページ >バックエンド開発 >PHPの問題 >PHPの抽象クラスとインターフェースの違いは何ですか

PHPの抽象クラスとインターフェースの違いは何ですか

王林
王林オリジナル
2020-11-02 13:50:036233ブラウズ

php における抽象クラスとインターフェイスの違い: 1. 抽象クラスは属性と通常のメソッドを持つことができますが、インターフェイスは属性と通常のメソッドを持つことができません; 2. 抽象クラスは抽象メソッドを持つことはできませんが、インターフェイスには抽象メソッドを持つ必要があります抽象化.メソッド; 3. 抽象クラスは、abstract キーワードを使用して宣言され、インターフェイスは、interface キーワードを使用して宣言されます。

PHPの抽象クラスとインターフェースの違いは何ですか

違いの紹介:

(推奨チュートリアル: php ビデオ チュートリアル)

抽象クラス:これは、クラスそのものであるクラスに基づいています。これは、直接インスタンス化できない特殊なクラスにすぎません。クラス内でメソッドと属性を定義できます。テンプレートと同様に、サブクラスも指定後、詳細な機能を実装できます。

インターフェイス: 主にメソッド仕様に基づいており、抽象メソッドよりも独立している点を除けば、抽象クラスの抽象メソッドに似ています。複数のメソッドを組み合わせることで、クラスを新しいクラスに結合できます。

抽象クラスとインターフェイスの類似点:

1. どちらも、特定のものを宣言し、名前とパラメータを標準化し、詳細な実装の詳細を持たずにモジュールを形成するために使用されます。

2. 関連する詳細な作業はクラスを通じて実装されます。

3. 文法的には、抽象クラスの抽象メソッドはインターフェイスと同じであり、メソッド本体を持つことはできません。 {} シンボル

4. 継承を使用できます。インターフェイスはインターフェイスを継承して新しいインターフェイスを形成でき、抽象クラスは抽象クラスを継承して新しい抽象クラスを形成できます。

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

1. 抽象クラスは属性、通常のメソッド、および抽象メソッドを持つことができますが、インターフェイスは属性、通常のメソッドを持つことができず、定数を持つことができます

2. 抽象メソッドは存在しない場合があります抽象クラス内にありますが、「 Abstract 」メソッドが必要です

3。構文が異なります

4。抽象クラスは、abstract キーワードを持つクラスの前に宣言され、クラスは次のように宣言されます。インターフェイスは、interface で宣言されますが、インターフェイスはクラスではないため、class を使用して宣言することはできません。

5. 抽象クラスの抽象メソッドは abstract で宣言する必要がありますが、インターフェイスはそうである必要はありません

6. 抽象クラスは extends キーワードを使用して、サブクラスが継承できるようにします親クラス。クラスは詳細な抽象メソッドを実装します。インターフェイスは、実装を使用して、通常のクラスがクラス内のインターフェイスの詳細なメソッドを実装できるようにし、インターフェイスは一度に複数のメソッドを実装できます。各インターフェイスを区切るにはカンマを使用するだけです。

関連推奨事項: php トレーニング

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

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