Maison >Java >javaDidacticiel >Les méthodes qui se chevauchent prennent en charge le polymorphisme

Les méthodes qui se chevauchent prennent en charge le polymorphisme

DDD
DDDoriginal
2024-09-18 22:53:53643parcourir

Superposition de méthodes :

  • Ce n'est pas seulement une question de nom, mais une fonctionnalité fondamentale de Java.

  • Il est basé sur le concept de répartition de méthode dynamique.

Diffusion de méthode dynamique :

  • C'est le mécanisme par lequel l'appel à une méthode de substitution est résolu au moment de l'exécution, et non au moment de la compilation.

  • Permet l'implémentation du polymorphisme en Java.

Comment ça marche :

  • Une variable de référence de superclasse peut référencer un objet de sous-classe.

  • Lorsqu'une méthode surchargée est appelée via une référence de superclasse, la version de la méthode à exécuter est déterminée en fonction du type de l'objet au moment de l'appel.

  • Par conséquent, le choix de la méthode à exécuter se fait au moment de l'exécution.

Importance :

  • Le type de l'objet référencé (et non le type de la variable de référence) détermine quelle version de la méthode remplacée sera exécutée.

  • Cela permet à différents types d'objets, référencés par une variable de référence de superclasse, d'appeler différentes versions de la méthode remplacée.

Métodos sobrepostos dão suporte ao polimorfismo

Métodos sobrepostos dão suporte ao polimorfismo

Structure du programme :

  • Superclasse : Sup, avec la méthode who().

  • Sous-classes : Sub1 et Sub2, toutes deux remplacent la méthode who().

Exécution dans main() :

  • Création des objets superOb (type Sup), subOb1 (type Sub1) et subOb2 (type Sub2).

  • Une variable de référence supRef de type Sup est utilisée pour référencer les différents objets.

Comportement :

  • L'appel à supRef.who() détermine la version de la méthode à exécuter en fonction du type de l'objet référencé au moment de l'appel, et non du type de la variable de référence supRef.

Résultat du programme :

  • Selon le type de l'objet référencé (superOb, subOb1 ou subOb2), la version correspondante de la méthode who() est appelée et affichée.

  • Cela démontre le concept de répartition dynamique, où la méthode exécutée est décidée au moment de l'exécution, permettant la mise en œuvre du polymorphisme.

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
Article précédent:Poids moucheArticle suivant:Poids mouche