Thực hành ứng dụng giao diện trong OOP PHP
Hãy thử ứng dụng giao diện vào thực tế. Hãy giải quyết bài toán về các hình từ bài học trước, nhưng lần này sử dụng giao diện, không phải lớp trừu tượng.
Vậy bây giờ chúng ta có giao diện Figure:
<?php
interface Figure
{
public function getSquare();
public function getPerimeter();
}
?>
Hãy viết lớp Quadrate, lớp này
sẽ triển khai các phương thức của giao diện này:
<?php
class Quadrate implements Figure
{
private $a;
public function __construct($a)
{
$this->a = $a;
}
public function getSquare()
{
return $this->a * $this->a;
}
public function getPerimeter()
{
return 4 * $this->a;
}
}
?>
Cách thức hoạt động: nếu quên triển khai
bất kỳ phương thức nào được mô tả trong giao diện,
PHP sẽ hiển thị cho chúng ta một lỗi nghiêm trọng. Hãy
cùng triển khai lớp Rectangle:
<?php
class Rectangle implements Figure
{
private $a;
private $b;
public function __construct($a, $b)
{
$this->a = $a;
$this->b = $b;
}
public function getSquare()
{
return $this->a * $this->b;
}
public function getPerimeter()
{
return 2 * ($this->a + $this->b);
}
}
?>
Hãy tạo lớp Disk,
triển khai giao diện Figure.