Keskeinen ero - Varhainen ja myöhäinen sitova
Varhainen ja myöhäinen sitova ovat kaksi käsitystä, jotka liittyvät polymorfismiin. Varhainen sidonta tapahtuu kääntöaikana, kun taas myöhäinen sidonta tapahtuu ajon aikana. Keskeinen ero varhaisen ja myöhäisen sidonnan välillä on, että varhainen sidonta käyttää luokkatietoja menetelmän kutsun ratkaisemiseen, kun taas myöhäinen sidonta käyttää objektia menetelmän kutsun ratkaisemiseen.
Ohjelmointikielet, kuten Java, tukevat OOP (Object Oriented Programming). Se on paradigma, joka sallii ohjelman tai ohjelmiston rakentamisen esineitä käyttämällä. Ohjelmistossa on useita objekteja. Nämä objektit kytketään toisiinsa ja välittävät viestejä menetelmillä. Jokaisella esineellä on ominaisuuksia ja käyttäytymistä. Ominaisuudet kuvataan ominaisuuksilla tai määritteillä. Käyttäytyminen kuvataan menetelmillä. Opiskelijalla voi olla ominaisuuksia, kuten nimi, ikä, ja niitä edustavat ominaisuudet. Kohde Opiskelija voi käyttäytyä kuten opiskella ja lukea, ja ne esitetään menetelmillä. Yksi OOP: n pääpilareista on polymorfismi. Sen avulla esine voi käyttäytyä monin tavoin. Varhainen ja myöhäinen sitova ovat kaksi käsitteitä polymorfismissa. Ylikuormitusmenetelmät sidotaan käyttämällä varhaista sitoutumista. Ohitetut menetelmät sidotaan käyttämällä myöhäistä sitomista.
SISÄLLYS
1. Yleiskatsaus ja keskeinen ero
2. Mikä on varhainen sidonta
3. Mikä on myöhäinen sidonta
4. Varhaisen ja myöhäisen sidonnan yhtäläisyydet
5. Vertailu rinnakkain - Varhainen ja myöhäinen sidonta taulukkomuodossa
6. Yhteenveto
Mikä on varhainen sidonta?
Varhaisessa sidonnassa luokkatietoja käytetään menetelmäkutsujen ratkaisemiseen. Varhainen sidonta tapahtuu kääntöhetkellä. Sitä kutsutaan myös staattiseksi sitomiseksi. Tässä prosessissa sitoutuminen tapahtuu ennen ohjelman todellista suorittamista. Ylikuormitusmenetelmät sidotaan käyttämällä varhaista sitoutumista. Katso alla oleva ohjelma.
Kuva 01: Laskuluokka
Kuva 02: Varhaisen sidonnan pääohjelma
Edellä olevan ohjelman mukaan Laskentaluokka sisältää add-menetelmän, joka hyväksyy kaksi kokonaislukua, ja toisen add-menetelmän, joka hyväksyy kaksi kaksoisarvoa. Pääohjelmassa luodaan laskutyyppinen objekti. Kun kaksi kokonaislukua välitetään add-menetelmälle, se käynnistää add-menetelmän, joka hyväksyy kaksi kokonaislukua. Kun kaksi kaksinkertaista arvoa välitetään add-menetelmälle, se käyttää menetelmää, joka vastaa kahta kaksoisarvoa. Tämä sitoutumisprosessi tapahtuu kääntöhetkellä. Kaikki vaaditut tiedot ovat tiedossa ennen ajonaikaa, joten ne lisäävät ohjelman tehokkuutta ja suorituksen nopeutta.
Mikä on myöhäinen sidonta?
Late Binding -ohjelmassa objektia käytetään menetelmäkutsujen ratkaisemiseen. Myöhäinen sidonta tapahtuu ajon aikana. Se tunnetaan myös nimellä dynaaminen sitoutuminen. Tässä prosessissa sidonta tapahtuu ohjelman suorituksen yhteydessä. Ohitetut menetelmät sidotaan käyttämällä myöhäistä sitomista. Katso alla oleva ohjelma.
Kuva 03: Muotoluokka
Kuva 04: Ympyräluokka
Kuva 05: Kolmion luokka
Kuva 06: Myöhäissidonnan pääohjelma
Yllä olevan ohjelman mukaan luokassa Shape on piirtomenetelmä. Class Circle ja class Triangle -luokka laajentavat Shape-luokkaa. Siksi nämä kaksi luokkaa voivat periä Muoto-luokan määritteet ja menetelmät. Shape Class on perusluokka. Ympyrä- ja kolmion luokat ovat johdettuja luokkia. Luokalla Circle ja luokassa Triangle on myös piirustusmenetelmä omilla toteutuksillaan. Joten Shape-luokan piirtomenetelmä ohitetaan johdettujen luokkien piirtomenetelmillä.
Pääohjelmassa luodaan Shape-tyyppinen viitemuuttuja s. Kääntäjänä kääntäjä viittaa vain perusluokan piirtomenetelmään. Ajon aikana suoritetaan erilaisia piirtomenetelmiä. Ensinnäkin s osoittaa Shape-tyypin kohteeseen. Joten käytetään Shape-luokan piirtomenetelmää. Sitten s osoittaa ympyrätyyppiseen kohteeseen ja se vetää ympyräluokan piirtomenetelmän. Lopuksi s osoittaa tyypin Triangle objektia ja se vetää piirtomenetelmän Triangle-luokassa. Menetelmiä kutsutaan kohteista riippuen. Siksi objektia käytetään ratkaisemaan menetelmäkutsu myöhässä sidonnassa. Sitomiseen tarvittavat tiedot annetaan ajoaikana, joten suorituksen nopeus on hitaampi verrattuna varhaiseen sitomiseen.
Mikä on varhaisen sitomisen ja myöhäisen sidonnan yhtäläisyys?
Sekä varhainen sitoutuminen että myöhäinen sitoutuminen liittyvät polymorfismiin, joka on OOP: n pilari
Mikä on ero varhaisen sitomisen ja myöhäisen sitomisen välillä?
Erilainen artikkeli keskellä taulukkoa
Varhainen sitova vs myöhäinen sitova |
|
Luokkatietojen käyttöä prosessin kutsun ratkaisemiseksi kääntämisajankohtana kutsutaan varhaiseksi sidonnaksi. | Prosessia, jolla objektia käytetään ratkaisemaan ajon aikana tapahtuva menetelmäpuhelu, kutsutaan myöhäiseksi sitomiseksi. |
Sidonnan aika | |
Varhainen sidonta tapahtuu kääntöhetkellä. | Myöhäinen sidonta tapahtuu ajon aikana. |
Toiminnallisuus | |
Varhainen sidonta käyttää luokkatietoja ratkaisemaan menetelmän kutsun. | Myöhäinen sidonta käyttää objektia ratkaisemaan menetelmän kutsun. |
Synonyymit | |
Varhainen sidonta tunnetaan myös staattisena sidonnana. | Myöhäinen sitoutuminen tunnetaan myös nimellä dynaaminen sitoutuminen. |
Esiintyminen | |
Ylikuormitusmenetelmät sidotaan käyttämällä varhaista sitoutumista. | Ohitetut menetelmät sidotaan käyttämällä myöhäistä sitomista. |
Suoritusnopeus | |
Suoritusnopeus on nopeampi varhaisessa sidonnassa. | Suorituksen nopeus on pienempi myöhäisessä sidonnassa. |
Yhteenveto - Varhainen ja myöhäinen sitova
OOP: ta käytetään yleisesti ohjelmistokehitykseen. Yksi OOP: n pääpilareista on polymorfismi. Varhaissidonta ja myöhäinen sidonta liittyvät tähän. Varhainen sidonta tapahtuu kääntöaikana, kun taas myöhäinen sidonta tapahtuu ajon aikana. Menetelmän ylikuormituksessa sitoutuminen tapahtuu varhaisen sitomisen avulla. Menetelmän ohittamisessa sitoutuminen tapahtuu myöhäistä sitomista käyttäen. Aikaisen ja myöhäisen sidonnan ero on siinä, että varhainen sidonta käyttää luokkatietoja menetelmän kutsun ratkaisemiseen, kun taas myöhäinen sidonta käyttää objektia menetelmän kutsun ratkaisemiseen.