2010-11-19 12 views
3

PHPの動的多態性はテンプレートクラスのようにサポートされているのですか、PHPで多態性を使用する唯一の方法は、抽象関数とオーバーロード/オーバーライドですか?PHPの動的多態性

+0

私はここを見ています:http://www.devshed.com/c/a/PHP/Building-Dynamic-Web-Pages-with-Polymorphism-in-PHP-5/2/処理の総計...おそらく私が理解していないものがあります... – Webnet

答えて

2

ありテンプレートクラスのようなものは何もありませんが、あなたは非常に多くの使用抽象クラスとインターフェイスだけでなく、国家、デコレーターのようなデザインパターンを利用して異なる実行時の動作を実現することができ、戦略など。

関連

Is what seems like polymorphism in PHP really polymorphism?

1

あなたはインターフェースだけでなく、抽象クラスを使用することができます。

1

インターフェイスを使用して、共通の機能をクラスに追加できます。もちろん、特定の関数をオーバーライドしてクラスを拡張することもできます。私のクラスの機能をポリモーフする最も一般的な方法は、ベース(テンプレート)クラスから始めて、その使用ツリーの各フォークに対してそれを拡張することです。