Maison  >  Article  >  développement back-end  >  Pouvez-vous appeler des méthodes de type de base dans des types intégrés avec des méthodes surchargées dans Go ?

Pouvez-vous appeler des méthodes de type de base dans des types intégrés avec des méthodes surchargées dans Go ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-15 10:39:03392parcourir

Can You Call Base Type Methods in Embedded Types with Overloaded Methods in Go?

Appel de méthodes de type de base dans la surcharge de types intégrés

Lors de la définition de types personnalisés dans Go, il est possible d'incorporer une structure dans une autre, ce qui permet réutilisation du code et fonctionnalités de type héritage. Cependant, cela peut entraîner des conflits lors de la surcharge des méthodes.

Dans l'exemple fourni, les structures Human et Employee ont surchargé les méthodes SayHi. Est-il possible d'appeler la méthode Human en accédant directement au type embarqué ?

Oui, c'est effectivement possible. Pour accéder à la structure incorporée d'un type parent, utilisez simplement le nom du type incorporé en tant que membre de la structure parent. Par exemple, pour appeler la méthode Human depuis l'instance Employee :

sam := Employee{Human{"Sam", 45, "111-888-XXXX"}, "Golang Inc"}
sam.Human.SayHi()

Cela affichera :

Hi, I am Sam you can call me on 111-888-XXXX

Notez que vous pouvez également accéder aux champs du type parent directement à partir de la structure intégrée . Par exemple, sam.age accéderait au champ age de la structure Human incorporée dans la structure Employee.

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