ホームページ > バックエンド開発 > PHPチュートリアル > PHP 抽象クラスは抽象クラスを継承します。 uml 抽象クラス 抽象クラスの例

PHP 抽象クラスは抽象クラスを継承します。 uml 抽象クラス 抽象クラスの例

WBOY
リリース: 2016-07-29 08:53:50
オリジナル
1018 人が閲覧しました

PHP プログラマーにとって、習得するのが最も難しいポイントは、PHP 抽象クラス アプリケーションの知識ポイントです。私は初心者なので、まだオブジェクト指向の知識を使ってプログラミングする準備ができていませんが、今後の開発では、クラスを使用してカプセル化したり、インターフェイスを使用してさまざまなモジュール形式でプログラムを開発したりすることは避けられません。

自然言語では、抽象概念をオブジェクトの大きな説明として理解します。これは、特定の種類のオブジェクトに共通の特性です。 PHP にも同じことが当てはまります。クラスを抽象化する場合、このクラスは、そのサブメソッドが実装する必要があるいくつかの動作を示すテンプレートである必要があります。

PHP抽象クラスアプリケーションの定義:

抽象クラスClassName{

}

PHP抽象クラスアプリケーションのキーポイント:

1. いくつかのメソッドを定義し、サブクラスはこの抽象化のすべてのメソッドを完全に実装する必要があります

2.抽象クラスからオブジェクトを作成することはできません、その意味は拡張されることです

3. 抽象クラスには通常、抽象メソッドがあり、メソッドに中かっこはありません

PHP抽象クラスの適用ポイント:

1. 抽象メソッドは特定の関数を実装する必要はありません

2. サブクラスが抽象クラスのメソッドを実装する場合、サブクラスの可視性は抽象メソッドの定義以上である必要があります

3.抽象クラスのメソッドはパラメータを持つことも、空にすることもできます

4. 抽象メソッドにパラメータがある場合、サブクラスの実装にも同じ数のパラメータが必要です

PHP 抽象クラスの適用例:

abstract public function_name( ); //中括弧がないことに注意してください

PHP 抽象クラスのルール:

  1. クラスに少なくとも 1 つの抽象メソッドが含まれる限り、抽象クラスとして宣言する必要があります
  2. 抽象メソッドには関数本体を含めることはできません
  3. 抽象クラスのサブクラスを継承し、抽象メソッドを実装するサブクラスは、その抽象メソッドに関連している必要があります。同じか、それより低いアクセス レベルです。
  4. すべての抽象メソッドが実装されていない場合、サブクラスも継承します。抽象クラス

デモとして、単純な抽象クラスを実装してみましょう: 長方形の面積を計算します。この長方形は形状クラスから拡張できます。

PHP 抽象クラスは抽象クラスを継承します。 uml 抽象クラス 抽象クラスの例

PHP   
<span>abstract</span><span>class</span><span> Shape {   
</span><span>abstract</span><span>protected</span><span>function</span><span> get_area();   
</span><span>//</span><span>和一般的方法不同的是,这个方法没有大括号   
//你不能创建这个抽象类的实例:$Shape_Rect</span>= <span>new</span><span> Shape(); 
}   
</span><span>class</span> Rectangle <span>extends</span><span> Shape{   
</span><span>private</span><span>$width</span><span>;   
</span><span>private</span><span>$height</span><span>;   
</span><span>function</span> __construct(<span>$width</span>=0,
<span>$height</span>=0<span>){   

  </span><span>$this</span>->width=<span>$width</span><span>;   
</span><span>  $this</span>->height=<span>$height</span><span>;   
}   
</span><span>function</span><span> get_area(){   
</span><span>  echo</span> (<span>$this</span>->width+<span>$this</span>->height)*2<span>;   
}   
}   
</span><span>$Shape_Rect</span> = <span>new</span> Rectangle(20,30<span>);   
</span><span>$Shape_Rect</span>-><span>get_area();   
</span>?>   
ログイン後にコピー

PHP 抽象クラスは抽象クラスを継承します。 uml 抽象クラス 抽象クラスの例

これも基本的に PHP での抽象クラスの使用法を説明する簡単な例です。残りについてはこれ以上説明しません。個人的には、抽象クラスは一般に大規模なプロジェクトで使用されると思います。なぜなら、抽象クラスには遵守すべき「ルール」が多すぎて使いにくいと思うからです。もちろん、これは単なる私の意見です。さらにいくつか言いたいことがあります。PHP 抽象クラス アプリケーションは単一継承です。つまり、1 つのクラスからのみ継承できますが、クラス A とクラス B を継承する 1 つのクラスは継承できません。そのような関数を実装したい場合。 、インターフェイスを使用する必要があります。関連する知識については、当面は PHP インターフェイスの知識については説明しません。一言で言えば、単一の継承と複数のインターフェイスです。

上記では、PHP と抽象クラスの内容を含む PHP 抽象クラスを紹介しましたが、PHP チュートリアルに興味のある友人に役立つことを願っています。

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