⊗ppOpTrNs 84 of 107 menu

Traitien käyttö traiteissa

Traitit, kuten luokat, voivat myös käyttää muita traiteja. Katsotaanpa esimerkkiä. Oletetaan, että meillä on tällainen trait kahdella metodilla:

<?php trait Trait1 { private function method1() { return 1; } private function method2() { return 2; } } ?>

Oletetaan, että meillä on myös toinen trait:

<?php trait Trait2 { private function method3() { return 3; } } ?>

Yhdistetään traitiin Trait2 trait Trait1:

<?php trait Trait2 { use Trait1; // käytetään ensimmäistä traita private function method3() { return 3; } } ?>

Tällaisen yhdistämisen jälkeen Trait2 sisältää omien metodien lisäksi myös traitin Trait1 metodit. Tarkistetaan tämä: tehdään luokka Test, yhdistetään siihen trait Trait2 ja varmistetaan, että luokkaamme ilmestyvät sekä ensimmäisen traitin että toisen metodit:

<?php class Test { use Trait2; // yhdistetään toinen trait public function __construct() { echo $this->method1(); // ensimmäisen traitin metodi echo $this->method2(); // ensimmäisen traitin metodi echo $this->method3(); // toisen traitin metodi } } ?>

Tee itsenäisesti samanlaiset traitit, kuin minulla ja yhdistä ne luokkaan Test. Tee tähän luokkaan metodi getSum, joka palauttaa yhdistettyjen traittien metodien tulosten summan.

Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää