PHP'de OOP'de Arayüz Metotlarında Parametreler

Arayüzlerde metotları tanımlarken sadece metot isimlerini değil, onların aldığı parametreleri de belirtmek gerekir.

Bir örnek üzerinden inceleyelim. Elimizde matematiksel işlemler (toplam, çıkarma, çarpma, bölme) için bir sınıfı tanımlayan iMath arayüzü olsun. Bu arayüzün şu şekilde göründüğünü varsayalım:

iMath.php<?php
  interface iMath
  {
    public function sum();
    public function subtract();
    public function multiply();
    public function divide();
  }
?>

Şu anda arayüzümüzün metotları herhangi bir parametre almıyor. Aslında, bu arayüzü uygulayacak sınıfın metotları da parametre almamalı, aksi takdirde hata oluşacaktır.

Şimdi arayüzümüzdeki metotların parametrelerini belirtelim:

iMath.php<?php
  interface iMath
  {
    public function sum($a, $b);
    public function subtract($a, $b);
    public function multiply($a, $b);
    public function divide($a, $b);
  }
?>

Şimdi arayüzümüzün uygulamasını yazalım:

Math.php<?php
  class Math implements iMath
  {
    public function sum($a, $b)
    {
      return $a + $b;
    }
    
    public function subtract($a, $b)
    {
      return $a - $b;
    }
    
    public function multiply($a, $b)
    {
      return $a * $b;
    }
    
    public function divide($a, $b)
    {
      return $a / $b;
    }
  }
?>

Eğer sınıfımızda farklı sayıda parametre belirlemeye çalışırsak - bu mümkün olmayacaktır: PHP hata verecektir. Böylece ne bir parametreyi yanlışlıkla unutabiliriz, ne de fazladan bir parametre ekleyebiliriz.

Задание 1

Elimizde şu şekilde bir iUser arayüzü olduğunu varsayalım:

php<?php
  interface iUser
  {
    public function setName($name);
    public function getName();
    public function setAge($age);
    public function getAge();
  }
?>

Bu arayüzü uygulayan bir User sınıfı yapın.