Luokan ja käyttöliittymän ero

Sisällysluettelo:

Luokan ja käyttöliittymän ero
Luokan ja käyttöliittymän ero

Video: Luokan ja käyttöliittymän ero

Video: Luokan ja käyttöliittymän ero
Video: Javan perusteita lyhyesti: Luokat ja oliot 2024, Marraskuu
Anonim

Avainero – luokka vs. käyttöliittymä

Object-Oriented Programming (OOP) on yleinen paradigma ohjelmistokehityksessä. Se auttaa tuomaan todellisia skenaarioita ohjelmointiin luokkien ja objektien avulla. Luokka on suunnitelma objektin luomiseksi. Ohjelmoija voi luoda luokan ominaisuuksilla ja menetelmillä. Oppilas ja opettaja ovat esineitä. Objektin luomista kutsutaan instantiaatioksi. OOP käyttää myös rajapintoja. Liitännät ja luokka saattavat näyttää samanlaisilta, mutta niillä on ero. Tässä artikkelissa käsitellään eroa luokan ja käyttöliittymän välillä. Keskeinen ero luokan ja käyttöliittymän välillä on se, että luokka on viitetyyppi, joka on suunnitelma objektin ilmentämiseksi, kun taas käyttöliittymä on viitetyyppi, jota ei voida käyttää objektin ilmentämiseen.

Mikä on luokka?

OOP:ssa kaikkea pidetään objektina. Ei ole mahdollista luoda objektia ilman luokkaa. Luokka on suunnitelma objektin luomiseksi. Taloa rakentaessaan arkkitehti piirtää suunnitelman. Suunnitelma on samanlainen kuin luokka. Talo on samanlainen kuin kohde. Luokka on suunnitelma objektin rakentamisesta. Objekti on se, joka luodaan luokan avulla.

Luokka sisältää ominaisuudet ja menetelmät. Opiskelijalla voi olla ominaisuuksia, kuten nimi, arvosana, indeksinumero. Opiskelijalla voi olla menetelmiä, kuten lukeminen, kävely, opiskelu. Luodaan luokka, jossa on tarvittavat ominaisuudet ja menetelmät.

Syntaksi luokan luomiseen monilla ohjelmointikielillä on seuraava. Se luodaan käyttämällä avainsanaluokkaa.

luokan luokan_nimi {

// kiinteistöt

//menetelmät

}

Ohjelmointikielet, kuten C ja Java, noudattavat samanlaista syntaksia luodakseen objektin luokan avulla. Oletetaan, että luokan nimi on Opiskelija.

Student s1=uusi opiskelija ();

Tämä s1 on objekti. "Uusi" avainsanaa käytetään varaamaan muistia ominaisuuksille. Luokassa on myös konstruktori ominaisuuksien tai muuttujien alustamiseksi.

Luokkien jäsenillä, kuten ominaisuuksilla ja menetelmillä, on pääsyn muokkaajia. Käyttöoikeusmääritykset kuvaavat näiden jäsenten saavutettavuutta ja näkyvyyttä muille luokille. Luokan jäsenillä voi olla käyttöoikeusmäärityksiä, kuten julkinen, yksityinen ja suojattu. Julkiset jäsenet ovat muiden luokkien käytettävissä. Yksityiset jäsenet ovat vain luokan käytettävissä. Suojatut jäsenet ovat käytettävissä luokassa ja asiaankuuluvissa alaluokissa.

Mikä on käyttöliittymä?

Abstraktio on olio-ohjelmoinnin peruspilari. Sen tarkoitus on piilottaa toteutustiedot ja näyttää toiminnallisuus käyttäjälle. Abstraktio saavutetaan käyttämällä abstrakteja luokkia ja rajapintoja. Abstraktilla menetelmällä ei ole toteutusta. Luokkaa, joka sisältää vähintään yhden abstraktin menetelmän, kutsutaan abstraktiksi luokaksi.

Kun on kaksi abstraktia luokkaa, näissä luokissa ilmoitetut menetelmät tulee ottaa käyttöön. Näiden menetelmien toteuttamiseen käytetään uutta luokkaa. Jos molemmilla luokilla oli sama menetelmä, se saattaa aiheuttaa epäselvyysongelman. Siksi ohjelmointikielillä, kuten Java ja C, on käyttöliittymä.

Liitännät sisältävät vain menetelmien määrittelyn. Toteutusmenetelmää ei ole. Myöskään rajapintoja ei voida käyttää objektien luomiseen. Niitä käytetään tukemaan useita perintöjä ja turvaamaan koodi.

Liitännän syntaksi on seuraava. Käyttöliittymä käytä avainsanaa "käyttöliittymä".

käyttöliittymän_nimi{

type method1(parameter_list);

type method2(parameter_list);

}

Yllä olevan mukaan liitännöillä on vain ilmoitus. Ei ole määritelmää. Joten käyttöliittymät eivät voi ilmentää objekteja. Se antaa vain abstraktin kuvan siitä, mikä käyttöliittymä on. Rajapinnassa ilmoitetut menetelmät voidaan toteuttaa yhdellä tai useammalla luokalla. Luokka käyttää avainsanaa "toteuttaa" rajapinnan toteuttamiseen. Katso alla esimerkki, joka on kirjoitettu Javalla.

Ero luokan ja käyttöliittymän välillä
Ero luokan ja käyttöliittymän välillä
Ero luokan ja käyttöliittymän välillä
Ero luokan ja käyttöliittymän välillä

Kuva 01: Ohjelma käyttöliittymillä

Yllä olevan ohjelman mukaan A ja B ovat rajapintoja. Liitännässä A on menetelmän määrittely, joka on summa(). Liitännässä B on menetelmän määrittely sub(). Luokka C toteuttaa molemmat rajapinnat, jotka ovat A ja B. Siksi luokka C määrittelee sekä sum()- että sub()-menetelmät. C-tyypin objektin luomisen jälkeen on mahdollista kutsua molemmat menetelmät sum() ja sub().

Rajapinnassa ilmoitettujen menetelmien on aina oltava julkisia, koska toteutusluokat määrittelevät ne. Liitäntä voi myös periä toiselta käyttöliittymältä.

Mitä yhtäläisyyksiä luokan ja käyttöliittymän välillä on?

  • Molemmat ovat viitetyyppejä.
  • Molemmat liittyvät olio-ohjelmointiin.

Mitä eroa luokassa ja käyttöliittymässä on?

Luokka vs. käyttöliittymä

Luokka on viitetyyppi, joka on suunnitelma objektin luomiseen. Liitäntä on viitetyyppi, jota ei voida toteuttaa.
Objektin ilmentäminen
Luokkaa käytetään objektin luomiseen. Liitäntää ei voida toteuttaa, koska menetelmät eivät pysty suorittamaan mitään toimintoa.
Rakentaja
Luokka sisältää konstruktorin muuttujien alustamiseksi. Rajapinta ei sisällä konstruktoria, koska ne eivät juurikaan ole alustettavat muuttujat.
Avainsana
Luokalla käytetään avainsanaa "luokka". Liitännässä käytetään avainsanaa "liitäntä".
Käyttöoikeusmääritys
Luokan jäsenet voivat olla yksityisiä, julkisia ja suojattuja. Rajapinnan jäsenten tulee olla aina julkisia, koska toteutusluokat määrittelevät ne.

Yhteenveto – luokka vs. käyttöliittymä

Luokat ja rajapinnat ovat laaj alti käytössä olioohjelmoinnissa. Ero luokan ja käyttöliittymän välillä on se, että luokka on viitetyyppi, joka on suunnitelma objektin ilmentämiseksi, ja käyttöliittymä on viitetyyppi, jota ei voida käyttää objektin ilmentämiseen. Luokka voi toteuttaa monia rajapintoja. Mutta se voi laajentaa vain yhtä huippuluokkaa. Käyttöliittymässä voi periä monia rajapintoja, mutta toteutusta ei voi olla. Molemmilla on merkityksensä. Ohjelmoija voi käyttää niitä ohjelmistokehityksen mukaan.

Lataa PDF-luokka vs. käyttöliittymä

Voit ladata tämän artikkelin PDF-version ja käyttää sitä offline-tarkoituksiin lainaushuomautuksen mukaisesti. Lataa PDF-versio tästä Luokan ja käyttöliittymän ero

Suositeltava: