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:
<?php
trait Helper1
{
private $name;
public function getName()
{
return $this->name;
}
}
?>
Kedua:
<?php
trait Helper2
{
private $age;
public function getAge()
{
return $this->age;
}
}
?>
Gunakan trait kita di dalam kelas:
<?php
class User
{
use Helper1, Helper2; // menghubungkan trait
public function __construct($name, $age)
{
$this->name = $name;
$this->age = $age;
}
}
?>
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.
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.