1. ポリモーフィズムとは何ですか? ポリモーフィズムとは文字通り「複数の形状」を意味します。これは、「1 つの外部インターフェイスと複数の内部実装メソッド」という複数の表現形式として理解できます。オブジェクト指向理論におけるポリモーフィズムの一般的な定義は、「同じ操作が異なるクラスのインスタンスに適用されると、異なる実行結果が生成される」というものです。つまり、異なるタイプのオブジェクトが同じメッセージを受信すると、異なる結果が得られます。実際のアプリケーション開発では、オブジェクト指向ポリモーフィズムを使用する主な目的は、異なるサブクラス オブジェクトを 1 つの親クラスとして扱うことができ、異なるサブクラス オブジェクト間の差異をシールドしてユニバーサル コードにして、変化するニーズに適応する一般的なプログラミングを作成できることです。 。
/**
* Shape Interface
*
* @version 1.0
* @copyright
* (1) インターフェース (interface) を使用すると、クラスが実装する必要があるメソッドを指定できますが、これらのメソッドの具体的な内容を定義する必要はありません。
* (2) 標準クラスを定義するのと同じように、interface を通じてインターフェイスを定義できますが、その中で定義されているメソッドはすべて空です。
* (3) インターフェース内で定義されるメソッドはすべて public である必要があります。これはインターフェースの特性です
。*/
interface Shape {
public functiondraw();
}
/**
* Triangle
*
* @uses Shape
* @version 1.0
* @copyright
* (1) インターフェイスを実装するには、implements 演算子を使用できます。クラスは、インターフェイスで定義されたすべてのメソッドを実装する必要があります。実装しない場合は、致命的なエラーが報告されます。
* (2) 複数のインターフェースを実装する場合は、カンマを使用して複数のインターフェースの名前を区切ることができます。
*/
class Triangle は Shape {
public functiondraw() {
print "Triangle::draw()n";
}
}
/**
* 長方形
*
* @形状を使用します
* @バージョン 1.0
* @copyright
*/
class Rectangleimplements Shape {
public functiondraw() {
print "Rectangle::draw()n";
}
}
/**
* ポリモーフィズムのテスト
*
* @バージョン 1.0
* @copyright
*/
class TestPoly {
public functiondrawNow($shape) {
} $shape->draw();
}
}
$test = new TestPoly();
$test->drawNow(new Triangle());
$test->drawNow(new Rectangle());
?>
上記では、PHP コンテンツを含む PHP ポリモーフィズムについて紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。