Nouveau mot-clé dans la signature de méthode
Question : Que signifie le nouveau mot-clé dans une signature de méthode ?
Réponse : Dans une signature de méthode, le mot-clé new indique que la méthode est une nouvelle méthode dans la classe dérivée qui cache l’implémentation de la classe de base d’une méthode. Il est différent du mot-clé override, qui ne peut être utilisé que pour remplacer les méthodes virtuelles déclarées dans la classe de base.
Exemple :
Considérons la classe de base suivante :
public class Base { public void BaseMethod() {} }
Maintenant, créons une classe dérivée qui remplace la méthode BaseMethod en utilisant la méthode override mot-clé :
public class Derived : Base { public override void BaseMethod() {} }
Dans cet exemple, le mot-clé override indique au compilateur que la méthode BaseMethod dans la classe dérivée remplace l'implémentation de la classe de base.
Cependant, créons maintenant un autre dérivé class et utilisez le nouveau mot-clé dans la signature de la méthode :
public class AnotherDerived : Base { public new void BaseMethod() {} }
Dans l'exemple ci-dessus, le nouveau mot-clé est utilisé car la méthode BaseMethod dans la la classe dérivée ne remplace pas l’implémentation de la classe de base. Au lieu de cela, il crée une nouvelle méthode portant le même nom que la méthode de la classe de base.
Différences clés entre new et override :
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!