php implémente une syntaxe à traits d'héritage multiples
Depuis PHP 5.4.0, PHP implémente un code Les méthodes réutilisées sont appelés traits.
Trait est un mécanisme de réutilisation de code préparé pour les langages à héritage unique comme PHP. Les traits sont conçus pour réduire les limitations des langages à héritage unique et permettre aux développeurs de réutiliser librement des méthodes dans des classes indépendantes au sein de différentes hiérarchies. La sémantique de la composition des traits et des classes définit un moyen de réduire la complexité et d'éviter les problèmes typiques associés à l'héritage multiple traditionnel et aux classes Mixin.
Les traits sont similaires aux classes, mais sont uniquement conçus pour combiner des fonctionnalités de manière fine et cohérente. Ne peut pas être instancié via le trait lui-même. Il ajoute une combinaison de fonctionnalités horizontales à l'héritage traditionnel ; c'est-à-dire qu'il n'est pas nécessaire d'hériter entre plusieurs classes dans une application. (Apprentissage recommandé : Tutoriel vidéo PHP)
Les membres hérités de la classe de base seront remplacés par les membres insérés par le trait. L'ordre de priorité est que les membres de la classe actuelle remplacent les méthodes du trait et que le trait remplace les méthodes héritées.
Voici le code :
trait traitTestOne{<br/> public function test(){<br/> echo "This is trait one <br/>";<br/> }<br/> public function testOne(){<br/> echo "one <br/>";<br/> }<br/>}<br/> <br/>trait traitTestTwo{<br/>// public function test(){<br/>// echo "This is trait two";<br/>// }<br/> public function testTwo(){<br/> echo "two <br/>";<br/> }<br/>}<br/> <br/>class basicTest{<br/> public function test(){<br/> echo "hello world\n";<br/> }<br/>}<br/>class myCode extends basicTest{<br/> use traitTestOne,traitTestTwo;<br/>}<br/> <br/>$test = new mycode();<br/>$test->test();<br/>$test->testOne();<br/>$test->testTwo();<br/>
Le résultat est :
This is trait one<br/>one<br/>two<br/>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!