⊗ppOpTrMP 82 of 107 menu

Priorita metód pri práci s traitmi v OOP v PHP

Ak trieda a trait majú metódu s rovnakým názvom, metóda triedy prepíše metódu trait-u:

<?php trait TestTrait { // Metóda s názvom method: public function method() { return 'trait'; } } class TestClass { use TestTrait; // Rovnaká metóda s názvom method: public function method() { return 'test'; } } $test = new TestClass; echo $test->method(); // vypíše 'test' - spustila sa metóda samotnej triedy ?>

Ak samotná trieda nemá takúto metódu, ale existuje konflikt názvov metód trait-u a metód rodičovskej triedy, potom metódy trait-u majú prioritu:

<?php trait TestTrait { // Metóda s názvom method: public function method() { return 'trait'; } } // Rodičovská trieda: class ParentClass { // Metóda s názvom method: public function method() { return 'parent'; } } // Trieda zdedí metódu method od rodiča: class TestClass extends ParentClass { use TestTrait; } $test = new TestClass; echo $test->method(); // vypíše 'trait', pretože trait má prioritu ?>
Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť