PHP'de OOP'de Birden Fazla Trait Kullanımı

Bir sınıfta bir değil, birden fazla trait kullanılabilir. Onların kalıtım karşısındaki avantajı da burada ortaya çıkar. Bir sınıfta kullanılacak trait'ler, use anahtar kelimesinden sonra virgülle ayrılarak belirtilebilir.

Bir örnek üzerinden görelim. Elimizde iki trait olduğunu varsayalım. Birincisi:

Helper1.php<?php
  trait Helper1
  {
    private $name;
    
    public function getName()
    {
      return $this->name;
    }
  }
?>

İkincisi:

Helper2.php<?php
  trait Helper2
  {
    private $age;
    
    public function getAge()
    {
      return $this->age;
    }
  }
?>

Trait'lerimizi bir sınıfta kullanalım:

User.php<?php
  class User
  {
    use Helper1, Helper2; // trait'leri bağlıyoruz
    
    public function __construct($name, $age)
    {
      $this->name = $name;
      $this->age = $age;
    }
  }
?>
Задание 1

Trait1, Trait2 ve Trait3 adlarında 3 trait yapın. Birinci trait'te 1 döndüren method1 metodu, ikinci trait'te 2 döndüren method2 metodu, üçüncü trait'te ise 3 döndüren method3 metodu olsun. Tüm bu metodlar private olsun.

Задание 2

Oluşturduğumuz üç trait'i de kullanan Test adında bir sınıf yapın. Bu sınıfta, bağlanan trait'lerin metodlarının sonuçlarının toplamını döndüren public getSum metodunu yapın.