PHP におけるポリモーフィズムの概念とコード例
オブジェクト指向プログラミングでは、ポリモーフィズムは重要な概念です。ポリモーフィズムにより、オブジェクトごとに異なる応答が可能になります。同じメッセージに。 PHP では、インターフェイスと継承を通じてポリモーフィズムを実現できます。次に、具体的なコード例を通して、PHP におけるポリモーフィズムの概念を分析します。
最初に、calculateArea
メソッドを含むインターフェイスShape
を作成します。
interface Shape { public function calculateArea(); }
次に、2 つのクラスCircle# を作成します。 ## と
Squareは、それぞれ
Shapeインターフェイスを実装します。
class Circle implements Shape { private $radius; public function __construct($radius) { $this->radius = $radius; } public function calculateArea() { return round(pi() * pow($this->radius, 2), 2); } } class Square implements Shape { private $sideLength; public function __construct($sideLength) { $this->sideLength = $sideLength; } public function calculateArea() { return pow($this->sideLength, 2); } }
getShapeAreaを作成します。
Shapeインターフェイスをパラメータとして使用し、その
calculateAreaメソッドを呼び出して面積を計算します。
function getShapeArea(Shape $shape) { return $shape->calculateArea(); }
Circle と 以上がPHP のポリモーフィズムの概念を分析するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。と ## を作成できます。 #Square
オブジェクトを作成し、getShapeArea
関数を呼び出してその面積を計算します。$circle = new Circle(5); $square = new Square(4); echo "圆的面积:" . getShapeArea($circle) . ";"; // 输出:圆的面积:78.54; echo "正方形的面积:" . getShapeArea($square) . "。"; // 输出:正方形的面积:16。
Square
クラスはそれぞれShape
インターフェイスを実装し、特定の形状に基づいて面積を計算するcalculateArea
メソッドをカバーします。getShapeArea
関数を呼び出してさまざまなオブジェクトを渡すことにより、さまざまなオブジェクト インスタンスに基づいたポリモーフィズムを実現します。要約すると、PHP のポリモーフィズムはインターフェイスと継承を通じて実装され、異なるオブジェクトが同じメッセージに対して異なる応答を行うことができるため、コードのスケーラビリティと柔軟性が向上します。適切な設計と実装により、ポリモーフィズムを最大限に活用してコード構造を簡素化し、コードの再利用性を向上させることができます。