Ero Java-pakettien ja käyttöliittymien välillä

Kirjoittaja: Laura McKinney
Luomispäivä: 2 Huhtikuu 2021
Päivityspäivä: 3 Heinäkuu 2024
Anonim
Ero Java-pakettien ja käyttöliittymien välillä - Tekniikka
Ero Java-pakettien ja käyttöliittymien välillä - Tekniikka

Sisältö


Paketit ja käyttöliittymät toimivat molemmat kontina. Luokat voivat käyttää pakettien ja rajapintojen sisältöä tuomalla ja toteuttamalla se vastaavasti. Perusero pakettien ja rajapintojen välillä on, että paketti sisältää ryhmän luokkia ja rajapintoja, kun taas rajapinta sisältää menetelmiä ja kenttiä. Tutkitaan joitain muita eroja vertailutaulun avulla.

  1. Vertailutaulukko
  2. Määritelmä
  3. Keskeiset erot
  4. johtopäätös

Vertailutaulukko

Vertailun perusteetpaketitrajapinnat
perustiedotPaketit on ryhmä luokkia ja / tai rajapintoja yhdessä.Rajapinnat on ryhmä abstrakteja menetelmiä ja vakiokenttiä.
avainsanaPaketit luodaan avainsanalla "Paketti".Rajapinta luodaan käyttämällä "Rajapinta" -sanaa.
Syntaksipaketti paketin nimi;
julkinen luokka_nimi {
.
(luokan runko)
.
}
käyttöliittymä_nimi {
muuttuva ilmoitus;
menetelmäilmoitus;
}
PääsyPaketti voidaan tuoda Rajapinta voidaan laajentaa toisella rajapinnalla ja toteuttaa luokka.
Käytä avainsanaa Paketit voidaan tuoda käyttämällä "Tuo" -sanaa.Rajapinnat voidaan toteuttaa avainsanalla "toteutta".


Pakkausten määritelmä

Paketit ovat kokoelmia tai ryhmiä useista luokista ja rajapinnoista. Pakkauksissa olevat luokat liittyvät toisiinsa jollain laajuudella tai perinnöllä. Voit myös luoda paketin ja käyttää sitä ohjelmassasi.

Paketin luominen

Noudata seuraavia vaiheita paketin luomiseksi.

  1. Avaa tiedosto ja ilmoita sitten paketin nimi tiedoston yläosassa, kuten paketin nimi on nimi, jonka haluat antaa paketille.
  2. Seuraavaksi määrität luokan, jonka haluat laittaa pakettiin, ja muistat julistavasi sen julkiseksi.
  3. Tallenna tiedosto .java-tiedostona ja käännä sitten tiedosto, sitten ”.class” on kyseisen tiedoston hakemisto.
  4. Paketin luomiseksi tälle tiedostolle käytetään komentoa “javac -d. file_name.java. Voit nähdä, että paketti on luotu sisältäen ”.class” tiedoston nykyisessä hakemistossa. Sijoita se emohakemistoon käyttämällä ”javac -d. . tiedostonimi.java ”-komento.
  5. Voit myös luoda alipaketin julistamalla alipaketin nimen kuten tiedoston yläosassa.

Mypackage-paketti; public class myclass {public void displayMypackage () {system.out.ln ("method displayMypackage of class myclass of pack Mypackage"); }

Paketin käyttäminen


Hakemistossa luodut tai saatavilla olevat paketit voidaan käyttää ohjelmassa tuontilausekkeen avulla. Avainsana, jota käytetään minkä tahansa paketin tuontiin ohjelmassa, on ”tuonti”. Tuontilausunto voidaan kirjoittaa kahdella tavalla, tai voit sanoa, että minkä tahansa paketin käyttämiseen on kaksi tapaa. Ensinnäkin, jos haluat käyttää tiettyä luokkaa paketista, "Tuo" -sanaa seuraa paketin nimi, jota seuraa pisteoperaattori ja luokan nimi, jota haluat käyttää paketista. Toiseksi, jos haluat käyttää monia luokkia, jotka sisältyvät paketteihin, tuonti-avainsanaa seuraa paketin nimi, jota seuraa piste ja ”*” -operaattori.

Tuo paketin_nimi. luokan nimi; tai tuo paketin_nimi. *;

Yllä olevassa koodissa voit nähdä * -merkin, joka osoittaa, että toinen menetelmä tuo kaikki paketit sisältävät luokat.

Katsotaanpa nyt paketin käyttöä esimerkillä.

tuo Mypackage. myclass {class TestMypackage {julkinen staattinen tyhjä pää (merkkijono merkitsee) {myclass ob1 = uusi myclass (); ob1.displayMypackage (); }} // lähtömenetelmänäyttöMacpackage luokan myclass paketissa Mypackage.

Yllä olevassa koodissa luokka TestMypackage on tuonut Mypackage-paketin ja käyttänyt sen displayMypackage () -menetelmää.

Rajapinnan määritelmä

Rajapinta on eräänlainen luokka, mutta eroaa siinä mielessä, että käyttöliittymässä ilmoitetut menetelmät ovat abstrakteja, mikä tarkoittaa, että menetelmät vain ilmoitetaan, mutta niitä ei määritetä. Käyttöliittymän kentät ovat aina julkisia, staattisia, lopullisia. Kentät on alustettava ilmoittamishetkellä. Rajapinnan ilmoittamat menetelmät määrittelee luokka, joka toteuttaa kyseisen rajapinnan vaatimuksensa mukaisesti. Koska käyttöliittymän menetelmät eivät suorita mitään toimintoa, rajapinnan minkään objektin luomiseen ei ole hyötyä. Siksi rajapintaan ei voida luoda mitään objektia.

Rajapinta voi myös periä toisen rajapinnan, mutta luokan, joka perii tällaisen rajapinnan, on myös toteutettava kaikki perinnöllisen rajapinnan menetelmät. Koska kentät alustetaan niiden ilmoittamishetkellä käyttöliittymässä, joten rajapintaan ei tarvita rakentajaa, rajapinnassa ei siis ole mitään rakentajaa. Katsotaanpa esimerkki käyttöliittymän luomisesta ja käytöstä.

rajapinta-ala {kelluva pi = 3,14; float find_area (kellua a, kellua b) {} luokan ympyrä toteuttaa alue {kellua löydettävä alue (kellua a, kellua b) {paluu (pi * a * a); } Luokkamuodot {julkinen staattinen tyhjä pää (merkkijonot) {alue A = uusi alue (); Ympyrä C = uusi ympyrä (); A = C; kelluva F = alue. find_area (10,10); system.out.ln ("Ympyrän alue on:" + F); }

Yllä olevassa koodissa olimme luoneet rajapinta-alueen, ja Circle-luokka on toteuttanut rajapinta-alueen. Kenttä “pi” on alustettu käyttöliittymässä sen ilmoittamishetkellä. Luokkapiiri on määritellyt luokka-alueen abstraktin menetelmän vaatimuksensa mukaisesti.

  1. Paketti on ryhmä luokkia ja rajapintoja yhdessä, kun taas rajapinta on ryhmä abstrakteja menetelmiä.
  2. Paketti luodaan avainsanalla paketti taas käyttöliittymä luodaan avainsanalla käyttöliittymä.
  3. Jos on käytettävä luokkaa tai käyttöliittymää paketin sisällä, tuotava paketti tuodaan, kun rajapinta on otettava käyttöön.

johtopäätös:

Sekä paketit että käyttöliittymä ovat kontteja. Paketti pienentää koodin kokoa, koska tuomme vain käytettävän luokan sen sijaan, että määrittäisimme sen uudelleen.Rajapinta vähentää monien perintöiden aikana tapahtuneita sekaannuksia, koska useiden perintöjen tapauksessa perintöluokan ei tarvitse päättää, mitkä menetelmät sen tulisi periä sen sijaan, että se määrittelee oman.