Разлика между ранното и късното обвързване

Съдържание:

Разлика между ранното и късното обвързване
Разлика между ранното и късното обвързване

Видео: Разлика между ранното и късното обвързване

Видео: Разлика между ранното и късното обвързване
Видео: Графа (Владимир Ампов) и Зелен хайвер - Крадена любов (ранна версия 1996) + текст 2024, Ноември
Anonim

Ключова разлика - Ранно срещу късно обвързване

Ранното обвързване и късното обвързване са две понятия, свързани с полиморфизма. Ранното обвързване се появява по време на компилиране, докато късното обвързване се случва по време на изпълнение. Ключовата разлика между ранно и късно свързване е, че ранното обвързване използва информацията за класа за разрешаване на извикването на метод, докато късното обвързване използва обекта за разрешаване на извикването на метод

Езици за програмиране като Java поддържа обектно ориентирано програмиране (OOP). Това е парадигма, която позволява изграждането на програмата или софтуера с помощта на обекти. В софтуера има множество обекти. Тези обекти са свързани помежду си и предават съобщения с помощта на методи. Всеки обект има характеристики и поведение. Характеристиките се описват от свойствата или атрибутите. Поведението е описано с помощта на методи. Обектът Student може да има характеристики като име, възраст и те са представени чрез свойства. Обектът Студент може да има поведения като изучаване и четене и те са представени чрез методи. Един основен стълб на ООП е полиморфизмът. Тя позволява на обекта да се държи по много начини. Ранното обвързване и късното обвързване са две понятия в полиморфизма. Методите за претоварване са свързани чрез ранно свързване. Заменените методи се свързват, като се използва късно свързване.

СЪДЪРЖАНИЕ

1. Общ преглед и ключова разлика

2. Какво е ранно обвързване

3. Какво е късно обвързване

4. Прилики между ранно и късно обвързване

5. Равно до сравнение - Ранно и късно обвързване в таблична форма

6. Резюме

Какво е ранно обвързване?

В Early Binding информацията за класа се използва за разрешаване на извикването на метод. Ранното обвързване се случва по време на компилиране. Известен е и като статично свързване. В този процес обвързването настъпва преди програмата действително да се изпълни. Методите за претоварване са свързани чрез ранно свързване. Вижте програмата по-долу.

Разлика между ранното и късното обвързване
Разлика между ранното и късното обвързване

Фигура 01: Клас на изчисление

Разлика между ранното и късното обвързване Фигура 02
Разлика между ранното и късното обвързване Фигура 02

Фигура 02: Основна програма за ранно подвързване

Съгласно горната програма, класът за изчисление съдържа метод за добавяне, който приема две целочислени стойности, и друг метод за добавяне, който приема две двойни стойности. В основната програма се създава обект от типа Изчисление. Когато предава две цели числа към метода на добавяне, той ще извика метода на добавяне, който приема две цели числа. Когато предава две двойни стойности на метода на добавяне, той ще извика метода, съответстващ на две двойни стойности. Този процес на свързване се извършва по време на компилиране. Цялата необходима информация е известна преди изпълнението, така че увеличава ефективността на програмата и скоростта на изпълнение.

Какво е късно обвързване?

При късно свързване обектът се използва за разрешаване на извикването на метод. Късно свързване настъпва по време на изпълнение. Известно е още като динамично свързване. В този процес обвързването възниква при изпълнение на програмата. Заменените методи се свързват, като се използва късно свързване. Вижте програмата по-долу.

Разлика между ранното и късното обвързване Фигура 03
Разлика между ранното и късното обвързване Фигура 03

Фигура 03: Клас на формата

Разлика между ранното и късното обвързване Фигура 04
Разлика между ранното и късното обвързване Фигура 04

Фигура 04: Клас на кръг

Разлика между ранното и късното обвързване Фигура 05
Разлика между ранното и късното обвързване Фигура 05

Фигура 05: Клас триъгълник

Основна разлика между ранното и късното обвързване
Основна разлика между ранното и късното обвързване

Фигура 06: Основна програма за късно свързване

Според горната програма, клас Shape има метод на теглене. Клас Circle и клас Triangle клас разширява класа Shape. Следователно тези два класа могат да наследят атрибутите и методите на класа Shape. Shape Class е основният клас. Класовете Circle и Triangle са производни класове. Класът Circle и class Triangle също имат метода на теглене със собствени реализации. Така че методът на теглене в клас Shape е заменен от методите на теглене на производни класове.

В основната програма се създава референтна променлива от тип Shape. По време на компилацията компилаторът ще се позовава само на метода за изтегляне на базовия клас. По време на изпълнение ще се изпълняват различни методи за теглене. Първо s ще сочи към обекта от тип Shape. И така, извиква се методът на изтегляне от клас Shape. Тогава s ще сочи към обекта от тип Circle и ще извика метода на теглене от клас Circle. И накрая, s ще сочи към обекта от тип Триъгълник и ще извика метода на теглене в клас Триъгълник. Методите се извикват в зависимост от обектите. Следователно обектът се използва за разрешаване на извикване на метод в късно свързване. Информацията, необходима за обвързване, се предоставя по време на изпълнение, така че скоростта на изпълнение е по-ниска в сравнение с ранното обвързване.

Каква е приликата между ранното обвързване и късното обвързване?

Както ранното обвързване, така и късното обвързване са свързани с полиморфизма, който е стълб на ООП

Каква е разликата между ранното обвързване и късното обвързване?

Различна статия Средна преди таблица

Ранно обвързване срещу късно обвързване

Процесът на използване на информацията за класа за разрешаване на извикването на метод, което се случва по време на компилация, се нарича Ранно обвързване. Процесът на използване на обекта за разрешаване на извикване на метод, който се случва по време на изпълнение, се нарича късно свързване.
Време на обвързване
Ранното обвързване се случва по време на компилиране. Късно обвързване се случва по време на изпълнение.
Функционалност
Ранното обвързване използва информацията за класа, за да разреши извикването на метод. Късно обвързване използва обекта за разрешаване на извикването на метод.
Синоними
Ранното обвързване е известно още като статично обвързване.. Късното обвързване е известно още като динамично обвързване.
Поява
Методите за претоварване са свързани чрез ранно свързване. Заменените методи се свързват, като се използва късно свързване.
Скорост на изпълнение
Скоростта на изпълнение е по-бърза при ранно свързване. Скоростта на изпълнение е по-ниска при късно свързване.

Резюме - Ранно срещу късно обвързване

OOP се използва често за разработване на софтуер. Един основен стълб на ООП е полиморфизмът. Ранното обвързване и късното обвързване са свързани с това. Ранното обвързване се появява по време на компилиране, докато късно обвързване възниква по време на изпълнение. При претоварване на метода свързването се случва с помощта на ранното свързване. При заместване на метода свързването се случва с помощта на късно свързване. Разликата между Early and Late Binding е, че Early Binding използва информацията за класа за разрешаване на извикването на метод, докато Late Binding използва обекта за разрешаване на извикването на метод.

Препоръчано: