ホームページ  >  記事  >  バックエンド開発  >  PHP 多態性コードの例_PHP チュートリアル

PHP 多態性コードの例_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 09:48:46962ブラウズ

PHP ポリモーフィック コード例

この記事では主に PHP ポリモーフィック コード例を 2 つ紹介します。必要な方は参考にしてください。

ポリモーフィック定義: オブジェクトの特定のクラスではなく、インターフェイスまたは基本クラスのみを考慮します。 (同じ種類でも結果は異なります)

ここに 2 つの例があります:

まず、基本クラスが標準を定義し、サブクラスが独自のルールを実装していることがわかりました。これはポリモーフィズムの要件です。同時に、これは書き換えを満たすためのものであり、実際には、異なるクラスの異なるパフォーマンスであり、インターフェイスや基本クラスのプログラミングを厳密に満たすものではありません。これを呼び出すと、stu->showGrade() ではなく、独自のメソッドになるためです。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

クラスの生徒{

パブリック関数 showGrade(){

echo "基本クラス";

}

}

クラスシャオミンはstuを拡張します{

パブリック関数 showGrade(){

エコー「息子ショー80です」;

}

}

クラス xiaoli は stu を拡張します{

パブリック関数 showGrade(){

エコー「息子ショー60です」;

}

}

関数 doit($obj){

if(get_class($obj) != "stu"){

$obj->showGrade();

}

}

doit(new xiaoli());

doit(new xiaomin());

2 番目の例: dovoice パラメーターは $obj を動物として指定し、インターフェースを使用して実装クラスのオブジェクトを受け入れることを意識しています。上向きの変革。これは、同じ型でも異なる結果と一致します。これはポリモーフィズムです。

PHP は型付き言語であるため、実際には Java では次のようになります。オブジェクト変換メカニズムはありません。

?

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/1022061.html技術記事 PHP ポリモーフィック コード例 この記事では、主に PHP ポリモーフィック コード例を 2 つ紹介します。必要な場合は、ポリモーフィック定義を参照してください。
1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

インターフェースアニマル{

公開関数 voice();

}

クラス猫は動物を実装します{

公開関数 voice(){

エコー「ミャオ~~~
」;

}

}

クラス犬は動物を実装します{

公開関数 voice(){

エコー「ワン~~~
」;

}

}

関数 dovoice(animal $obj){

$obj->voice();

}

dovoice(新しい犬());

dovoice(新しい猫());

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