PHPの抽象メソッドと抽象クラスを詳しく解説

迷茫
リリース: 2023-03-06 22:48:01
オリジナル
1434 人が閲覧しました

1. 抽象メソッドとは何ですか?

メソッドのないクラスで定義したメソッドは抽象メソッドです。いわゆるメソッド本体なしとは、宣言時に中括弧やその中身が存在しないことを意味しますが、宣言時にメソッド名の後に直接セミコロンを追加します。また、抽象メソッドを宣言する場合、メソッドにもキーワードを追加する必要があります。 . "abstract" を変更します。

例:
abstract function fun1();
abstract function fun2(); 2. 抽象クラスとは何ですか? 1 つのクラスにメソッドが存在する限り、抽象メソッドが存在し、このクラスは抽象クラスとして定義され、抽象クラスも "ABSTRACT" キーワードを使用して抽象クラス内でメソッドを変更できます。抽象メソッドやメンバ属性は使用できませんが、抽象メソッドがある限り、そのクラスは抽象クラスとして宣言され、「abstract」で装飾される必要があります。

例:

abstract class demo{
var $test;
abstract function fun1();
abstract function fun2();
}
ログイン後にコピー

3. 抽象クラスの役割は何ですか?

上記の例では、抽象クラス「demo」を定義し、「abstract」で変更しています。このクラスには、メンバー属性「$test」が定義されており、2つの抽象メソッド「fun1」と「fun2」が定義されています。非抽象メソッド fun3(); では、抽象クラスをどのように使用するのでしょうか?最も重要な点は、抽象クラスはインスタンス オブジェクトを生成できないため、クラスを直接使用できないことです。クラスを介してインスタンス化されたオブジェクトを使用するため、抽象クラスはインスタンスを生成できません。オブジェクトの抽象クラスを宣言するのはどうですか?抽象メソッドをサブクラスのオーバーロードのテンプレートとして使用します。この仕様は、サブクラスが抽象クラスを継承した後、その内部の抽象メソッドが実装されることを要求します。サブクラス。サブクラスは、親クラスのすべての抽象メソッドを実装する必要があります。そうでない場合、サブクラスにまだ抽象メソッドが存在する場合、サブクラスは依然として抽象クラスであり、抽象クラスから継承する必要があるのはなぜでしょうか。場合によっては、一部の関数を実装するために抽象クラスから継承する必要があるため、そうしないと、これらの関数を実装できなくなります。たとえば、

そのクラスに抽象メソッドを実装する必要があります。

以上がPHPの抽象メソッドと抽象クラスを詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!