Beberapa Trait dalam OOP di PHP

Dalam sebuah kelas, Anda dapat menggunakan tidak hanya satu, tetapi beberapa trait. Di sinilah keunggulannya terlihat dibandingkan dengan pewarisan. Trait yang diperlukan untuk digunakan dalam kelas dapat ditentukan dipisahkan dengan koma setelah kata kunci use.

Mari kita lihat sebuah contoh. Misalkan kita memiliki dua trait. Pertama:

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

Kedua:

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

Gunakan trait kita di dalam kelas:

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

Buatlah 3 trait dengan nama Trait1, Trait2 dan Trait3. Misalkan pada trait pertama ada metode method1 yang mengembalikan 1, pada trait kedua - metode method2, yang mengembalikan 2, dan pada trait ketiga - metode method3, yang mengembalikan 3. Misalkan semua metode ini bersifat privat.

Задание 2

Buat kelas Test yang menggunakan ketiga trait yang kita buat. Buatlah di kelas ini metode publik getSum, yang mengembalikan jumlah hasil metode dari trait yang dihubungkan.