PHP-də OOP-də Bir neçə treyt
Klassda bir deyil, bir neçə
treyt istifadə edilə bilər.
Bununla da onların mirasdan üstünlüyü özünü göstərir.
Klassda istifadə üçün lazım olan
treytlər use açar sözündən sonra vergüllə ayrılmaqla göstərilə bilər.
Gəlin bir nümunəyə baxaq. Tutaq ki, bizim iki treytimiz var. Birinci:
<?php
trait Helper1
{
private $name;
public function getName()
{
return $this->name;
}
}
?>
Ikinci:
<?php
trait Helper2
{
private $age;
public function getAge()
{
return $this->age;
}
}
?>
Treytlərimizi klassda istifadə edək:
<?php
class User
{
use Helper1, Helper2; // treytləri birləşdiririk
public function __construct($name, $age)
{
$this->name = $name;
$this->age = $age;
}
}
?>
Trait1,
Trait2 və Trait3 adları ilə 3 treyt hazırlayın.
Birinci treytdə 1 qaytaran method1 metodu,
ikinci treytdə 2 qaytaran method2 metodu,
üçüncü treytdə isə 3 qaytaran method3 metodu olsun.
Bütün bu metodlar private olsun.
Yaratdığımız hər üç treyti istifadə edən Test klassi hazırlayın.
Bu klassda birləşdirilmiş treytlərin metodlarının nəticələrinin cəmini qaytaran
public getSum metodu yaradın.