Różnica między wczesnym a późnym wiązaniem

Kluczowa różnica - wcześnie vs późne wiązanie
 

Wczesne wiązanie i późne wiązanie to dwa pojęcia związane z polimorfizmem. Wczesne wiązanie występuje w czasie kompilacji, natomiast późne wiązanie występuje w czasie wykonywania. The kluczowa różnica jest to między wczesnym a późnym wiązaniem Wczesne wiązanie używa informacji o klasie do rozstrzygania wywołań metod, podczas gdy późne wiązanie używa obiektu do rozpoznawania wywołań metod.

Języki programowania, takie jak Java, obsługują programowanie obiektowe (OOP). Jest to paradygmat, który umożliwia konstruowanie programu lub oprogramowania przy użyciu obiektów. Oprogramowanie zawiera wiele obiektów. Obiekty te są ze sobą połączone i przekazują wiadomości przy użyciu metod. Każdy obiekt ma cechy i zachowania. Charakterystyki są opisane przez właściwości lub atrybuty. Zachowania opisano za pomocą metod. Obiekt Student może mieć cechy takie jak imię i nazwisko, wiek i są reprezentowane przez właściwości. Obiekt Student może mieć takie zachowania, jak studiowanie i czytanie, i są reprezentowane metodami. Jednym z głównych filarów OOP jest polimorfizm. Pozwala obiektowi zachowywać się na wiele sposobów. Wczesne wiązanie i późne wiązanie to dwa pojęcia w polimorfizmie. Metody przeciążania są łączone za pomocą wczesnego wiązania. Zastąpione metody są łączone przy użyciu późnego wiązania.

ZAWARTOŚĆ

1. Przegląd i kluczowa różnica
2. Co to jest wczesne wiązanie
3. Co to jest późne wiązanie
4. Podobieństwa między wczesnym a późnym wiązaniem
5. Porównanie obok siebie - wczesne i późne wiązanie w formie tabelarycznej
6. Podsumowanie

Co to jest wczesne wiązanie?

We wczesnym wiązaniu informacje o klasie są używane do rozwiązywania wywołań metod. Wczesne wiązanie występuje w czasie kompilacji. Jest również znany jako wiązanie statyczne. W tym procesie wiązanie następuje przed uruchomieniem programu. Metody przeciążania są łączone za pomocą wczesnego wiązania. Zobacz poniższy program.

Rysunek 01: Klasa obliczeniowa

Rysunek 02: Główny program wczesnego wiązania

Zgodnie z powyższym programem klasa Calculation zawiera metodę add, która akceptuje dwie wartości całkowite, oraz inną metodę add, która akceptuje dwie podwójne wartości. W programie głównym tworzony jest obiekt typu Obliczenie. Po przekazaniu dwóch liczb całkowitych do metody add, wywoła metodę add, która akceptuje dwie liczby całkowite. Przekazując dwie podwójne wartości do metody add, wywoła metodę odpowiadającą dwóm podwójnym wartościom. Ten proces wiązania występuje w czasie kompilacji. Wszystkie wymagane informacje są znane przed uruchomieniem, więc zwiększa wydajność programu i szybkość wykonywania.

Co to jest późne wiązanie?

W późnym wiązaniu obiekt służy do rozwiązywania wywołań metod. Późne wiązanie występuje w czasie wykonywania. Jest również znany jako wiązanie dynamiczne. W tym procesie powiązanie występuje podczas wykonywania programu. Zastąpione metody są łączone przy użyciu późnego wiązania. Zobacz poniższy program.

Rysunek 03: Klasa kształtu

Rysunek 04: Klasa koła

Rysunek 05: Klasa trójkątów

Rysunek 06: Główny program późnego wiązania

Zgodnie z powyższym programem klasa Shape ma metodę rysowania. Klasa Circle i klasa Triangle rozszerzają klasę Shape. Dlatego te dwie klasy mogą dziedziczyć atrybuty i metody klasy Shape. Klasa kształtu jest klasą podstawową. Klasy kół i trójkątów są klasami pochodnymi. Klasa Circle i Class Triangle mają również metodę rysowania z własnymi implementacjami. Tak więc metoda rysowania w klasie Shape jest zastępowana przez metody rysowania klas pochodnych.

W programie głównym tworzona jest zmienna referencyjna typu Shape. W czasie kompilacji kompilator będzie odwoływał się tylko do metody losowania klasy podstawowej. W czasie wykonywania zostaną uruchomione różne metody losowania. Najpierw s wskaże obiekt typu Shape. Tak więc wywoływana jest metoda losowania klasy Shape. Następnie s wskaże obiekt typu Circle i wywoła metodę rysowania klasy Circle. Na koniec s wskaże obiekt typu Triangle i wywoła metodę rysowania w klasie Triangle. Metody są wywoływane w zależności od obiektów. Dlatego obiekt służy do rozstrzygania wywołań metod w późnym wiązaniu. Informacje wymagane do wiązania są dostarczane w czasie wykonywania, więc szybkość wykonania jest wolniejsza w porównaniu do wczesnego wiązania.

Jakie jest podobieństwo między wczesnym wiązaniem a późnym wiązaniem?

  • Zarówno wczesne wiązanie, jak i późne wiązanie są związane z polimorfizmem, który jest filarem OOP.

Jaka jest różnica między wczesnym wiązaniem a późnym wiązaniem?

Wczesne wiązanie vs późne wiązanie

Proces wykorzystywania informacji o klasie do rozwiązywania wywołań metod, który występuje w czasie kompilacji, nosi nazwę Early Binding. Proces używania obiektu do rozwiązywania wywołań metod, który występuje w czasie wykonywania, nazywa się późnym wiązaniem.
 Czas wiązania
Wczesne wiązanie odbywa się w czasie kompilacji. Późne wiązanie ma miejsce w czasie wykonywania.
Funkcjonalność
Wczesne wiązanie wykorzystuje informacje o klasie w celu rozwiązania wywołania metody. Późne wiązanie używa obiektu do rozwiązania wywołania metody.
 Synonimy
Wczesne wiązanie jest również znane jako wiązanie statyczne… Późne wiązanie jest również znane jako wiązanie dynamiczne.
Występowanie
Metody przeciążania są łączone za pomocą wczesnego wiązania. Zastąpione metody są łączone przy użyciu późnego wiązania.
Szybkość wykonania
Szybkość wykonania jest szybsza we wczesnym wiązaniu. Szybkość wykonania jest niższa w późnym wiązaniu.

Podsumowanie - wcześnie vs późne wiązanie

OOP jest powszechnie używany do tworzenia oprogramowania. Jednym z głównych filarów OOP jest polimorfizm. Wczesne wiązanie i późne wiązanie są z tym związane. Wczesne wiązanie występuje w czasie kompilacji, natomiast późne wiązanie występuje w czasie wykonywania. W przypadku przeciążenia metody wiązanie odbywa się przy użyciu wczesnego wiązania. W zastępowaniu metody wiązanie odbywa się przy użyciu późnego wiązania. Różnica między Wczesnym a Późnym Powiązaniem polega na tym, że Wczesne Powiązanie używa informacji o klasie do rozstrzygania wywołań metod, podczas gdy Późne Powiązanie używa obiektu do rozwiązywania wywołań metod.

Odniesienie:

1.Wywiad Java 04 - Wiązanie statyczne vs. Wiązanie dynamiczne, Samouczki Mahika, 27 grudnia 2017 r. Dostępne tutaj
2).Dynamiczna metoda wysyłania w Javie | Podstawowy samouczek Java | Studytonight. Dostępny tutaj