Dlaczego wiązanie dynamiczne jest ważne we wdrażaniu polimorfizmu?
Dlaczego wiązanie dynamiczne jest ważne we wdrażaniu polimorfizmu?

Wideo: Dlaczego wiązanie dynamiczne jest ważne we wdrażaniu polimorfizmu?

Wideo: Dlaczego wiązanie dynamiczne jest ważne we wdrażaniu polimorfizmu?
Wideo: Usługi badawcze dla biznesu 2024, Kwiecień
Anonim

Wiązanie dynamiczne umożliwia rozpoznanie wywołania funkcji członkowskiej w czasie wykonywania, zgodnie z typem czasu wykonywania odwołania do obiektu. Dzięki temu każda klasa zdefiniowana przez użytkownika w hierarchii dziedziczenia może mieć inny realizacja określonej funkcji.

Mając to na uwadze, czym jest polimorfizm wyjaśniający rolę, jaką odgrywa dynamiczne wiązanie w implementacji polimorfizmu?

To właśnie nazywamy statycznym wiążący : ten wiążący nazw dzieje się w czasie kompilacji (tj. statyczne). Taki mechanizm nazywa się dynamiczne wiązanie : ten wiążący imion na realizacja dzieje się w czasie wykonywania (tj. dynamiczny ). Wiązanie dynamiczne jest niezbędne, aby języki programowania obiektowego wdrożyć polimorfizm.

Podobnie, do czego służy wiązanie dynamiczne? Statyczny wiążący używa informacji Type (klasa w Javie) dla wiążący podczas dynamiczne wiązanie używa obiektu do rozwiązania wiążący . Przeciążone metody są łączone za pomocą statycznej wiążący podczas gdy nadpisane metody są łączone za pomocą dynamiczne wiązanie W czasie wykonywania.

Następnie pojawia się pytanie, czy dynamiczny polimorfizm wiązania?

Wielopostaciowość w Javie ma dwa typy: Czas kompilacji wielopostaciowość (statyczny wiążący ) i Runtime wielopostaciowość ( dynamiczne wiązanie ). Ważny przykład wielopostaciowość w ten sposób klasa nadrzędna odnosi się do obiektu klasy podrzędnej. W rzeczywistości każdy obiekt, który spełnia więcej niż jedną relację IS-A, jest polimorficzny w naturze.

Jak dynamiczne wiązanie jest przydatne w oops?

Wiązanie dynamiczne osiąga się za pomocą funkcji wirtualnych. Wskaźnik klasy bazowej wskazuje na obiekt klasy pochodnej. A funkcja jest deklarowana jako wirtualna w klasie bazowej, a następnie pasująca funkcja jest identyfikowana w czasie wykonywania przy użyciu wpisu wirtualnej tabeli. W jaki sposób elementy są przekazywane w zorientowany obiektowo język programowania ( OOP )?

Zalecana: