Maison >développement back-end >Problème PHP >Comment implémenter une méthode virtuelle en php

Comment implémenter une méthode virtuelle en php

藏色散人
藏色散人original
2020-10-09 09:53:471931parcourir

Implémentation de la méthode virtuelle php : créez d'abord un fichier exemple PHP ; puis transmettez "335b2fe7fedea6f1359ad4da787297acx(), alors si A::y() dans la sous-classe :: x() est remplacé par B::x(), A::y() appellera B::x().

Le résultat de l'exemple ci-dessus est le suivant :

A::x() was called. A::y() was called. --
B::x() was called. A::z() was called.
virtual-function.php

Le code est le suivant :

<?php 
class ParentClass { 
static public function say( $str ) { 
static::do_print( $str ); 
} 
static public function do_print( $str ) { 
echo "<p>Parent says $str</p>"; 
} 
} 
class ChildClass extends ParentClass { 
static public function do_print( $str ) { 
echo "<p>Child says $str</p>"; 
} 
} 
class AnotherChildClass extends ParentClass { 
static public function do_print( $str ) { 
echo "<p>AnotherChild says $str</p>"; 
} 
} 
echo phpversion(); 
$a=new ChildClass(); 
$a->say( &#39;Hello&#39; ); 
$b=new AnotherChildClass(); 
$b->say( &#39;Hello&#39; );

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn