Maison  >  Article  >  Java  >  La différence entre la liaison statique et la liaison dynamique en Java

La différence entre la liaison statique et la liaison dynamique en Java

WBOY
WBOYavant
2023-08-27 23:09:081420parcourir

La différence entre la liaison statique et la liaison dynamique en Java

La liaison est un mécanisme qui crée un lien entre un appel de méthode et l'implémentation réelle de la méthode. Selon le concept de polymorphisme en Java, les objets peuvent avoir de nombreuses formes différentes. Le formulaire objet peut être résolu au moment de la compilation et de l'exécution. Si le lien entre l'invocation de la méthode et l'implémentation de la méthode est résolu au moment de la compilation, nous l'appelons liaison statique ; s'il est résolu au moment de l'exécution, nous l'appelons liaison dynamique. La liaison dynamique utilise des objets pour résoudre les liaisons, tandis que la liaison statique utilise les types de classes et de champs.

Vieil homme. Non.

Clés

Reliure statique

Reliure dynamique

1 p>

Basique

Parsé au moment de la compilation

Résolu au moment de l'exécution

2

Mécanisme d'analyse

La liaison statique utilise les types de classes et de champs

Liaison dynamique utilisant des objets Pour résoudre la liaison

3

Exemple

La surcharge est un exemple de liaison statique

Remplacement de méthode ing est un exemple de liaison dynamique

4 .

Types de méthodes

Les méthodes et variables privées, finales et statiques utilisent la liaison statique

Les méthodes virtuelles utilisent la liaison dynamique

td>

Exemples de liaisons statiques et dynamiques

public class FastFood {
   public void create() {
      System.out.println("Creating in FastFood class");
   }
}
public class Pizza extends FastFood {
   public void create() {
      System.out.println("Creating in Pizza class");
   }
}
public class Main {
   public static void main(String[] args) {
      FastFood fastFood= new FastFood();
      fastFood.create();
      //Dynamic binding
      FastFood pza= new Pizza();
      pza.create();
   }
}

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer