PHP'de OOP'de Arayüzlerin Birbirinden Kalıtımı
Arayüzler, tıpkı sınıflar gibi, extends operatörü ile
birbirinden kalıtım alabilir.
Bir örnek üzerinden inceleyelim. Önceki dersten
şu arayüze sahip olduğumuzu varsayalım:
<?php
interface iRectangle
{
public function __construct($a, $b);
public function getSquare();
public function getPerimeter();
}
?>
Ancak, arayüzümüzün bir kısım metodlarını tanımlayan
iFigure arayüzü zaten mevcut:
<?php
interface iFigure
{
public function getSquare();
public function getPerimeter();
}
?>
Şimdi, iRectangle arayüzünün,
iFigure arayüzünün metodlarını kalıtım almasını sağlayalım:
<?php
interface iRectangle extends iFigure
{
public function __construct($a, $b);
}
?>
getName, setName, getAge,
setAge metodlarına sahip bir iUser arayüzü yapın.
iUser arayüzünden kalıtım alan ve ona
getSalary ve setSalary metodlarını
ekleyen bir iEmployee arayüzü yapın.
iEmployee arayüzünü uygulayan bir
Employee sınıfı yapın.