Différence clé - Reliure précoce ou tardive
La liaison précoce et la liaison tardive sont deux concepts liés au polymorphisme. La liaison anticipée se produit au moment de la compilation tandis que la liaison tardive se produit au moment de l'exécution. La principale différence entre la liaison anticipée et la liaison tardive est que la liaison anticipée utilise les informations de classe pour résoudre l'appel de méthode tandis que la liaison tardive utilise l'objet pour résoudre l'appel de méthode.
Les langages de programmation tels que Java prennent en charge la programmation orientée objet (POO). C'est un paradigme qui permet de construire le programme ou le logiciel à l'aide d'objets. Il y a plusieurs objets dans le logiciel. Ces objets sont connectés les uns aux autres et transmettent des messages à l'aide de méthodes. Chaque objet a des caractéristiques et des comportements. Les caractéristiques sont décrites par les propriétés ou les attributs. Les comportements sont décrits à l'aide de méthodes. L'objet Student peut avoir des caractéristiques telles que le nom, l'âge et elles sont représentées par des propriétés. L'objet Student peut avoir des comportements tels que l'étude et la lecture, et ils sont représentés par des méthodes. Un pilier majeur de la POO est le polymorphisme. Il permet à un objet de se comporter de plusieurs manières. La liaison précoce et la liaison tardive sont deux concepts du polymorphisme. Les méthodes de surcharge sont liées à l'aide de la liaison anticipée. Les méthodes remplacées sont liées à l'aide d'une liaison tardive.
CONTENU
1. Aperçu et différence clé
2. Qu'est-ce que la reliure précoce
3. Qu'est-ce que la reliure tardive
4. Similitudes entre la reliure précoce et tardive
5. Comparaison côte à côte - Reliure précoce et tardive sous forme tabulaire
6. Résumé
Qu'est-ce que la liaison anticipée?
Dans Early Binding, les informations de classe sont utilisées pour résoudre l'appel de méthode. La liaison anticipée se produit au moment de la compilation. Il est également connu sous le nom de liaison statique. Dans ce processus, la liaison se produit avant que le programme ne s'exécute réellement. Les méthodes de surcharge sont liées à l'aide de la liaison anticipée. Référez-vous au programme ci-dessous.
Figure 01: Classe de calcul
Figure 02: Programme principal pour la liaison anticipée
Selon le programme ci-dessus, la classe Calculation contient une méthode add qui accepte deux valeurs entières et une autre méthode add qui accepte deux valeurs doubles. Dans le programme principal, un objet de type Calcul est créé. Lorsque vous passez deux entiers à la méthode add, elle invoquera la méthode add qui accepte deux entiers. Lors du passage de deux valeurs doubles à la méthode add, elle invoquera la méthode correspondant à deux valeurs doubles. Ce processus de liaison se produit au moment de la compilation. Toutes les informations requises sont connues avant l'exécution, ce qui augmente l'efficacité du programme et la vitesse d'exécution.
Qu'est-ce que la liaison tardive?
Dans Late Binding, l'objet est utilisé pour résoudre l'appel de méthode. La liaison tardive se produit au moment de l'exécution. Il est également connu sous le nom de liaison dynamique. Dans ce processus, la liaison se produit lors de l'exécution du programme. Les méthodes remplacées sont liées à l'aide d'une liaison tardive. Référez-vous au programme ci-dessous.
Figure 03: Classe de forme
Figure 04: Classe de cercle
Figure 05: Classe Triangle
Figure 06: Programme principal pour la reliure tardive
Selon le programme ci-dessus, la classe Shape a une méthode draw. Classe Circle et classe La classe Triangle étend la classe Shape. Par conséquent, ces deux classes peuvent hériter des attributs et des méthodes de la classe Shape. La classe Shape est la classe de base. Les classes Circle et Triangle sont des classes dérivées. La classe Circle et la classe Triangle ont également la méthode draw avec leurs propres implémentations. Ainsi, la méthode draw de la classe Shape est remplacée par les méthodes draw des classes dérivées.
Dans le programme principal, une variable de référence s de type Shape est créée. Au moment de la compilation, le compilateur fera uniquement référence à la méthode draw de la classe de base. Au moment de l'exécution, différentes méthodes de dessin seront exécutées. Tout d'abord, s pointera vers l'objet de type Shape. Ainsi, la méthode draw de la classe Shape est appelée. Ensuite, le s pointera vers l'objet de type Circle, et il invoquera la méthode draw de la classe Circle. Enfin, s pointera vers l'objet de type Triangle et invoquera la méthode draw dans la classe Triangle. Les méthodes sont appelées en fonction des objets. Par conséquent, l'objet est utilisé pour résoudre l'appel de méthode dans Late Binding. Les informations requises pour la liaison sont fournies au moment de l'exécution, de sorte que la vitesse d'exécution est plus lente par rapport à la liaison anticipée.
Quelle est la similitude entre la liaison anticipée et la liaison tardive?
La liaison précoce et la liaison tardive sont toutes deux liées au polymorphisme qui est un pilier de la POO
Quelle est la différence entre une reliure anticipée et une reliure tardive?
Diff article au milieu avant la table
Reliure précoce vs liaison tardive |
|
Le processus d'utilisation des informations de classe pour résoudre l'appel de méthode qui se produit au moment de la compilation est appelé Early Binding. | Le processus d'utilisation de l'objet pour résoudre l'appel de méthode qui se produit au moment de l'exécution est appelé liaison tardive. |
Heure de la liaison | |
La liaison anticipée se produit au moment de la compilation. | La liaison tardive se produit au moment de l'exécution. |
Fonctionnalité | |
Early Binding utilise les informations de classe pour résoudre l'appel de méthode. | Late Binding utilise l'objet pour résoudre l'appel de méthode. |
Synonymes | |
La liaison anticipée est également appelée liaison statique. | La liaison tardive est également appelée liaison dynamique. |
Occurrence | |
Les méthodes de surcharge sont liées à l'aide de la liaison anticipée. | Les méthodes remplacées sont liées à l'aide d'une liaison tardive. |
Vitesse d'exécution | |
La vitesse d'exécution est plus rapide dans la liaison anticipée. | La vitesse d'exécution est inférieure en liaison tardive. |
Résumé - Reliure précoce ou tardive
La POO est couramment utilisée pour le développement de logiciels. Un pilier majeur de la POO est le polymorphisme. La reliure précoce et la reliure tardive sont liées à cela. La liaison anticipée se produit au moment de la compilation tandis que la liaison tardive se produit au moment de l'exécution. Dans la surcharge de méthode, la liaison se produit à l'aide de la liaison anticipée. Dans le remplacement de méthode, la liaison se produit en utilisant la liaison tardive. La différence entre Early et Late Binding est que Early Binding utilise les informations de classe pour résoudre l'appel de méthode tandis que Late Binding utilise l'objet pour résoudre l'appel de méthode.