⊗ppOpTrMT 78 of 107 menu

Múltiples traits en POO en PHP

En una clase se pueden utilizar no uno, sino varios traits. En esto radica su ventaja frente a la herencia. Los traits necesarios para su uso en la clase se pueden indicar separados por comas después de la palabra clave use.

Veamos un ejemplo. Supongamos que tenemos dos traits. El primero:

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

El segundo:

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

Utilicemos nuestros traits en una clase:

<?php class User { use Helper1, Helper2; // conectamos los traits public function __construct($name, $age) { $this->name = $name; $this->age = $age; } } ?>

Crea 3 traits con los nombres Trait1, Trait2 y Trait3. Que en el primer trait haya un método method1, que devuelva 1, en el segundo trait - un método method2, que devuelva 2, y en el tercer trait - un método method3, que devuelva 3. Que todos estos métodos sean privados.

Crea una clase Test, que utilice los tres traits creados por nosotros. Crea en esta clase un método público getSum, que devuelva la suma de los resultados de los métodos de los traits conectados.

azbydeenesfrkakkptruuz