Kāpēc dinamiskā saistīšana ir svarīga polimorfisma ieviešanā?
Kāpēc dinamiskā saistīšana ir svarīga polimorfisma ieviešanā?

Video: Kāpēc dinamiskā saistīšana ir svarīga polimorfisma ieviešanā?

Video: Kāpēc dinamiskā saistīšana ir svarīga polimorfisma ieviešanā?
Video: Static vs Dynamic binding in Programming language 2024, Novembris
Anonim

Dinamiskā iesiešana ļauj izpildīt dalībnieka funkcijas izsaukumu izpildes laikā atbilstoši objekta atsauces izpildes laika veidam. Tas ļauj katrai lietotāja definētajai klasei mantojuma hierarhijā būt atšķirīgai īstenošana noteiktai funkcijai.

Ņemot to vērā, kas ir polimorfisms, kas izskaidro dinamiskās saistīšanas lomu polimorfisma īstenošanā?

Tas ir tas, ko mēs saucam par statisku saistošs : saistošs nosaukumi notiek kompilēšanas laikā (t.i., statiski). Tādu mehānismu sauc dinamiska iesiešana : saistošs no vārdiem an īstenošana notiek izpildes laikā (t.i., dinamisks ). Dinamiskā iesiešana ir nepieciešams objektorientētām programmēšanas valodām īstenot polimorfismu.

Līdzīgi, kāda ir dinamiskās iesiešanas izmantošana? Statisks saistošs izmanto Tipa (klase Java) informāciju saistošs kamēr dinamiska iesiešana izmanto objektu, lai atrisinātu saistošs . Pārslogotas metodes tiek savienotas, izmantojot statisku saistošs kamēr ignorētās metodes tiek savienotas, izmantojot dinamiska iesiešana izpildlaikā.

Pēc tam jautājums ir, vai dinamiskās saistīšanās polimorfisms?

Polimorfisms Java ir divu veidu: Kompilēšanas laiks polimorfisms (statisks saistošs ) un izpildlaiks polimorfisms ( dinamiska iesiešana ). Svarīgs piemērs polimorfisms ir veids, kā vecāku klase attiecas uz bērnklases objektu. Faktiski jebkurš objekts, kas apmierina vairākas IS-A attiecības, ir polimorfs dabā.

Cik noderīga ir dinamiskā iesiešana?

Dinamiskā iesiešana tiek panākts, izmantojot virtuālās funkcijas. Bāzes klases rādītājs norāda uz atvasinātu klases objektu. Un funkcija tiek deklarēta par virtuālu bāzes klasē, pēc tam atbilstošā funkcija tiek identificēta izpildes laikā, izmantojot virtuālās tabulas ievadi. Kā elementi tiek nodoti an objektorientēts programmēšanas valoda ( OOP )?

Ieteicams: