Existe-t-il une relation directe entre la liaison tardive et la substitution, de la même manière pour la liaison précoce et la surcharge? Ils (Binding/Overriding/Overloading) peuvent être considérés comme des moyens d'implémenter le polymorphisme, mais y a-t-il des «relations directes» ex: Late Binding est un concept sub/super à Overriding et vice versa etc?Liaison vs polymorphisme
1
A
Répondre
1
Ce sont des concepts orthogonaux (indépendants).
- Surcharge, Redéfinition: Formes de polymorphisme
- liaison anticipée/liaison tardive: Dans le premier, la méthode d'appel est connu au moment de la compilation. Dans ce dernier, à l'exécution.
Bien sûr, une mise en oeuvre de passer outre habituellement implique l'utilisation liaison tardive, parce que vous ne savez type réel lors de l'exécution de l'objet. Mais c'est juste un cas spécial.
Questions connexes
- 1. Variables de liaison VS liaison de méthode dans le polymorphisme
- 2. Polymorphisme paramétrique vs polymorphisme sous-type F #
- 3. Polymorphisme et liaison dynamique
- 4. Polymorphisme vs Downcasting
- 5. Polymorphisme? C++ vs Java
- 6. C++, héritage vs polymorphisme
- 7. Polymorphisme vs hérédité. Diffrence?
- 8. java liaison statique et polymorphisme
- 9. java polymorphisme règles de liaison tardives
- 10. Liaison statique vs liaison dynamique
- 11. Liaison Ajax vs liaison serveur
- 12. Polymorphisme C#
- 13. dlopen vs liaison overhead
- 14. Liaison statique vs dynamique
- 15. INotifyPropertyChanged vs liaison bidirectionnelle
- 16. Compilation vs liaison statique
- 17. Polymorphisme en C++ idée de vtable (liaison dynamique)
- 18. Polymorphisme (types)
- 19. Reliure tardive vs polymorphisme - quelle est la différence?
- 20. Liaison vs commande dans CheckBox
- 21. Liaison source vs x: statique
- 22. Liaison contextuelle Autofac vs Ninject?
- 23. WPF Liaison XAML vs C#
- 24. Liaison statique Android vs Liaison dynamique contre la glibc
- 25. Quand le polymorphisme se produit
- 26. Type Polymorphisme de famille
- 27. Polymorphisme dans ViewControllers Storyboard
- 28. Polymorphisme ambigu?
- 29. Polymorphisme C++
- 30. Polymorphisme JSON
Donc, peut-il être appelé Overriding est basé sur la liaison tardive et la surcharge sur la liaison précoce - "TOUJOURS"? –
C'est le scénario typique, mais cela peut être différent. Supposons que vous ayez une classe de base 'Pet', et des classes dérivées' Dog' et 'Cat', et une méthode virtuelle' Speak' surchargée dans les deux classes dérivées. Si un compilateur/interpréteur voit les instructions suivantes: 'Pet p = new Dog(); p.Speak(); ', il a assez d'informations pour effectuer une liaison anticipée (il sait que p sera toujours un' Dog'). –
Bon !! Vous avez le sens d'habitude maintenant :) Merci. –