Különbség a korai és késői kötés között

Tartalomjegyzék:

Különbség a korai és késői kötés között
Különbség a korai és késői kötés között

Videó: Különbség a korai és késői kötés között

Videó: Különbség a korai és késői kötés között
Videó: Mi a különbség a than és then között? 2024, November
Anonim

Fő különbség – korai és késői kötés

A korai kötés és a késői kötés a polimorfizmushoz kapcsolódó két fogalom. A korai kötés a fordítási időben, míg a késői kötés futási időben történik. A fő különbség a korai és a késői kötés között az, hogy az Early Binding az osztályinformációkat használja a metódushívás feloldásához, míg a Késői kötés az objektumot használja a metódushívás feloldásához.

A programozási nyelvek, mint például a Java, támogatják az objektumorientált programozást (OOP). Ez egy olyan paradigma, amely lehetővé teszi a program vagy a szoftver objektumok felhasználásával való felépítését. A szoftverben több objektum is található. Ezek az objektumok kapcsolódnak egymáshoz, és metódusokkal továbbítják az üzeneteket. Minden tárgynak vannak sajátosságai és viselkedései. A jellemzőket a tulajdonságok vagy attribútumok írják le. A viselkedések leírása módszerek segítségével történik. A Student objektumnak lehetnek olyan jellemzői, mint a név, életkor, és ezeket tulajdonságok képviselik. A Student objektumnak lehetnek olyan viselkedései, mint például a tanulás és az olvasás, és ezeket metódusokkal ábrázolják. Az OOP egyik fő pillére a polimorfizmus. Lehetővé teszi, hogy egy objektum többféleképpen viselkedjen. A korai kötés és a késői kötés két fogalom a polimorfizmusban. A túlterheléses módszereket korai kötéssel kötik össze. A felülírt módszerek késői kötést használnak.

Mi az a korai kötés?

A korai kötésben az osztályinformációkat a metódushívás feloldására használják. A korai kötés a fordítási időben történik. Statikus kötésnek is nevezik. Ebben a folyamatban az összerendelés a program tényleges futása előtt megtörténik. A túlterheléses módszereket korai kötéssel kötik össze. Tekintse meg az alábbi programot.

Különbség a korai és késői kötés között
Különbség a korai és késői kötés között

01. ábra: Számítási osztály

Különbség a korai és késői kötés között_02. ábra
Különbség a korai és késői kötés között_02. ábra

02. ábra: Fő program a korai kötéshez

A fenti program szerint a Calculation osztály tartalmaz egy hozzáadási metódust, amely két egész értéket fogad el, és egy másik add metódust, amely két dupla értéket fogad el. A főprogramban egy Calculation típusú objektum jön létre. Ha két egész számot ad át az add metódusnak, akkor meghívja azt az add metódust, amely két egész számot fogad el. Ha két dupla értéket ad át az add metódusnak, akkor a két dupla értéknek megfelelő metódust hívja meg. Ez a kötési folyamat a fordítási időben történik. Minden szükséges információ ismert futási idő előtt, így növeli a program hatékonyságát és végrehajtási sebességét.

Mi az a késői kötés?

A késői kötésben az objektumot a metódushívás feloldására használják. Késői kötés futásidőben történik. Dinamikus kötésnek is nevezik. Ebben a folyamatban az összerendelés a program végrehajtása során történik. A felülírt módszerek késői kötéssel vannak összekapcsolva. Tekintse meg az alábbi programot.

Különbség a korai és késői kötés között_03. ábra
Különbség a korai és késői kötés között_03. ábra

03. ábra: Alakosztály

Különbség a korai és késői kötés között_04. ábra
Különbség a korai és késői kötés között_04. ábra

04. ábra: Körosztály

Különbség a korai és késői kötés között_05. ábra
Különbség a korai és késői kötés között_05. ábra

05. ábra: Háromszög osztály

Főbb különbség a korai és késői kötés között
Főbb különbség a korai és késői kötés között

06. ábra: Késői kötés fő programja

A fenti program szerint az Shape osztálynak van egy rajzolási módszere. Osztály Kör és osztály Háromszög osztály kiterjeszti az Alak osztályt. Ezért ez a két osztály örökölheti a Shape osztály attribútumait és metódusait. A Shape Class az alaposztály. A Circle és Triangle osztályok származtatott osztályok. A Circle osztály és a Triangle osztály is rendelkezik a rajzolási módszerrel, saját implementációkkal. Tehát a Shape osztály rajzolási metódusát felülírják a származtatott osztályok rajzolási metódusai.

A főprogramban egy Shape típusú referenciaváltozó jön létre. Fordításkor a fordító csak az alaposztály-rajzi metódusra hivatkozik. Futás közben különböző rajzolási módszerek fognak végrehajtani. Először az s a Shape típusú objektumra mutat. Tehát a Shape osztály rajzolási metódusa meghívásra kerül. Ekkor az s a Circle típusú objektumra mutat, és meghívja a Circle osztály rajzolási metódusát. Végül az s a Triangle típusú objektumra mutat, és meghívja a rajzolási metódust a Triangle osztályban. A metódusok meghívása az objektumoktól függően történik. Ezért az objektumot a késői kötésben a metódushívás feloldására használják. A kötéshez szükséges információk futási időben rendelkezésre állnak, így a végrehajtás sebessége lassabb a korai kötéshez képest.

Mi a hasonlóság a korai kötés és a késői kötés között?

Mind a korai kötés, mind a késői kötés kapcsolatban áll a polimorfizmussal, amely az OOP egyik pillére

Mi a különbség a korai kötés és a késői kötés között?

Korai kötés vs késői kötés

Az osztályinformációk felhasználásának folyamatát a fordítási időben fellépő metódushívások megoldására korai kötésnek nevezzük. Azt a folyamatot, amelynek során az objektumot használjuk a futási időben előforduló metódushívások feloldására, késői kötésnek nevezzük.
A kötés ideje
A korai kötés a fordítási időben történik. Késői kötés a futásidőben történik.
Funkcionalitás
Az Early Binding az osztályinformációkat használja a metódushívás feloldásához. A késői kötés az objektumot használja a metódushívás feloldására.
Szinonimák
A korai kötés statikus kötésként is ismert.. A késői kötés dinamikus kötésként is ismert.
Előfordulás
A túlterhelési módszerek korai kötéssel vannak összekötve. A felülírt módszerek késői kötést használnak.
Végrehajtási sebesség
A végrehajtási sebesség gyorsabb a korai kötésben. A végrehajtási sebesség alacsonyabb a késői kötésben.

Összefoglaló – Korai és késői kötés

Az OOP-t általában szoftverfejlesztésre használják. Az OOP egyik fő pillére a polimorfizmus. A korai kötés és a késői kötés ehhez kapcsolódik. A korai kötés a fordítási időben, míg a késői kötés futási időben történik. A módszer túlterhelése esetén a kötés a korai kötés használatával történik. A metódus felülbírálásakor a kötés a késői kötés használatával történik. Az Early Binding és a Late Binding között az a különbség, hogy az Early Binding az osztályinformációkat használja a metódushívás feloldásához, míg a Késői kötés az objektumot használja a metódushívás feloldásához.

Ajánlott: