Per què la unió dinàmica és important per implementar el polimorfisme?
Per què la unió dinàmica és important per implementar el polimorfisme?

Vídeo: Per què la unió dinàmica és important per implementar el polimorfisme?

Vídeo: Per què la unió dinàmica és important per implementar el polimorfisme?
Vídeo: The Chase Begins | Critical Role | Campaign 2, Episode 112 2024, De novembre
Anonim

Enquadernació dinàmica permet resoldre una crida de funció membre en temps d'execució, d'acord amb el tipus d'execució d'una referència d'objecte. Això permet que cada classe definida per l'usuari en una jerarquia d'herència tingui una altra implementació d'una funció concreta.

Tenint això en compte, què és el polimorfisme per explicar el paper que juga la unió dinàmica en la implementació del polimorfisme?

Això és el que anomenem estàtic enquadernació : el enquadernació de noms es produeixen en temps de compilació (és a dir, estàtic). Aquest mecanisme s'anomena enquadernació dinàmica : el enquadernació de noms a un implementació succeeix en temps d'execució (és a dir, dinàmic ). Enquadernació dinàmica és necessari per als llenguatges de programació orientats a objectes implementar el polimorfisme.

De la mateixa manera, per a què serveix l'enllaç dinàmic? Estàtica enquadernació utilitza informació de tipus (classe en Java) per a enquadernació mentre enquadernació dinàmica utilitza objecte per resoldre enquadernació . Els mètodes sobrecarregats s'uneixen mitjançant estàtica enquadernació mentre que els mètodes anul·lats s'uneixen mitjançant enquadernació dinàmica en temps d'execució.

Posteriorment, la pregunta és: és polimorfisme d'enllaç dinàmic?

Polimorfisme en Java hi ha dos tipus: Temps de compilació polimorfisme (estàtica enquadernació ) i temps d'execució polimorfisme ( enquadernació dinàmica ). Un exemple important de polimorfisme és com una classe pare es refereix a un objecte de classe fill. De fet, qualsevol objecte que satisfà més d'una relació IS-A ho és polimòrfica a la natura.

Com és útil l'enllaç dinàmic a oops?

Enquadernació dinàmica s'aconsegueix mitjançant funcions virtuals. El punter de classe base apunta a un objecte de classe derivada. I una funció es declara virtual a la classe base, llavors la funció coincident s'identifica en temps d'execució mitjançant l'entrada de taula virtual. Com es passen els elements en un orientat a objectes llenguatge de programació ( OOP )?

Recomanat: