Avainero paketin ja käyttöliittymän välillä Javassa on, että Package auttaa luokittelemaan luokat järjestelmällisesti, jotta niitä voidaan käyttää ja ylläpitää helposti, kun taas käyttöliittymä auttaa toteuttamaan useita perintöjä ja saavuttamaan abstraktion.
Java on yksi suosituimmista ohjelmointikielistä. Java:n tärkein etu on, että se tukee olio-ohjelmointia. Tämä menetelmä mahdollistaa reaalimaailman objektien mallintamisen ohjelmistossa. Luokka on suunnitelma objektin luomiseksi. Jokainen objekti sisältää tietoja tai kenttiä attribuuttien kuvaamiseksi tai ominaisuuksia ja menetelmiä käyttäytymisen kuvaamiseksi. Tässä artikkelissa käsitellään kahta käsitettä, jotka liittyvät Javan OOP:hen, jotka ovat paketti ja käyttöliittymä.
Mikä on paketti Javassa?
Java tarjoaa suuren määrän luokkia. Kaikkien luokkien pitäminen yhdessä kansiossa voi olla vaikeaa, koska siihen on vaikea päästä käsiksi. Tämä voi vaikuttaa ohjelman hallintaan. Java käyttää paketteja luokkien järjestämiseen. Se on samanlainen kuin kansio. Java API ryhmittelee luokat eri paketeihin toiminnallisuuden mukaan. Siksi jokainen paketti sisältää toisiinsa liittyviä luokkia.
Esimerkki Java-paketteista
Muutama esimerkkipaketti ovat seuraavat. Java.io-paketti sisältää syöttöä ja lähtöä tukevat luokat. Se sisältää File, PrintStream, BufferInputStream jne. java.net-paketti sisältää verkkoon liittyvät luokat. Joitakin esimerkkejä ovat URL, Socket, ServerSocket. Paketti java.awt sisältää kaikki luokat, joita tarvitaan graafisten käyttöliittymien rakentamiseen. Nämä ovat muutamia Java API -paketteja.
Kun ohjelmoija haluaa käyttää tiettyä luokkaa ohjelmassa, hänen tulee tuoda kyseinen paketti. Jos ohjelmoija haluaa käyttää BufferInputStream-luokkaa java.io-paketissa, hänen tulee kirjoittaa tuontikäsky seuraavasti.
tuo java.util. BufferInoutStream;
Alla oleva lauseke tuo kaikki util-paketin luokat.
tuo java.util.;
On myös mahdollista luoda käyttäjän määrittämiä paketteja.
pakettityöntekijä;
julkinen luokka Työntekijä {
}
Yllä olevan esimerkin mukaan työntekijä on paketin nimi. Työntekijäluokka on osa työntekijäpakettia. Tämä tiedosto tallennetaan työntekijäpakettiin nimellä Employee.java.
Lisäksi on mahdollista tuoda julkinen luokka paketista toiseen. Katso seuraava esimerkki.
Kuva 01: Luokka A
Kuva 02: Luokka B
Luokka A on paketissa 1, ja se sisältää julkisen menetelmän nimeltä näyttö. Luokka B on paketissa 2, ja se sisältää päämenetelmän. Vaikka ne ovat erillisissä pakkauksissa; luokka B voi luoda luokan A objektin tuomalla paketin1. Paketin 1 tuonnin jälkeen luokalla B on pääsy luokan A tietoihin ja menetelmiin.
Yleensä Package in Java auttaa järjestämään projektitiedostoja. Tämä on erittäin hyödyllistä kehitettäessä suurta järjestelmää, koska se mahdollistaa kaikkien tiedostojen tallentamisen metodisesti. Tämän lisäksi Java API -paketit antavat ohjelmoijille mahdollisuuden käyttää jo olemassa olevia luokkia.
Mikä on Java-liittymä?
Joskus ohjelmoija ei ehkä tiedä menetelmän määritelmää. Näissä tilanteissa ohjelmoija voi vain ilmoittaa menetelmän. Abstrakti menetelmä on menetelmä, jolla ei ole määritelmää. Siinä on vain ilmoitus. Kun on olemassa ainakin yksi abstrakti menetelmä, siitä luokasta tulee abstrakti luokka. Lisäksi abstrakti luokka voi sisältää abstrakteja menetelmiä sekä ei-abstrakteja menetelmiä. Ohjelmoija ei voi luoda objekteja abstrakteista luokista.
Kun luokka laajentaa abstraktia luokkaa, uuden luokan tulee määrittää kaikki abstraktin luokan abstraktit menetelmät. Toisin sanoen oletetaan, että abstraktilla luokalla A on abstrakti menetelmä nimeltä näyttö. Luokka B laajentaa luokkaa A. Sitten luokan B pitäisi määrittää menetelmän näyttö.
Esimerkki Java-liittymästä
Oletetaan, että sekä A että B ovat abstrakteja luokkia. Jos luokka C laajentaa A:ta ja B:tä, luokan C on määriteltävä molempien luokkien abstraktit menetelmät. Tämä on moninkertaista perintöä. Java ei tue moniperintöä. Sen toteuttamiseksi ohjelmoijan tulee käyttää rajapintoja. Jos A ja B ovat rajapintoja, luokka C voi toteuttaa ne. Katso seuraava esimerkki.
Kuva 03: Liitäntä A
Kuva 04: Liitäntä B
Liitännässä A on display1 abstrakti menetelmä ja käyttöliittymässä B on display2 abstrakti menetelmä.
Kuva 05: Luokka C
Class C toteuttaa sekä A- että B-liitännät. Siksi sen tulisi määrittää molemmat menetelmät.
Kuva 06: Päämenetelmä
Nyt päämenetelmässä on mahdollista luoda C:n objekti ja kutsua molempia menetelmiä. Samoin käyttöliittymät auttavat toteuttamaan useita perintöjä Javassa.
Moniperinnön lisäksi rajapinnat auttavat saavuttamaan abstraktion. Se on yksi tärkeä käsite OOP:ssa. Abstraktion avulla voidaan piilottaa toteutustiedot ja näyttää vain toiminnallisuus käyttäjälle. Lisäksi se mahdollistaa keskittymisen siihen, mitä kohde tekee sen sijaan, miten se tehdään. Koska käyttöliittymä koostuu abstrakteista menetelmistä, se auttaa arkistoimaan abstraktion.
Mitä eroa paketilla ja käyttöliittymällä on Javassa?
Paketti on joukko toisiinsa liittyviä luokkia, jotka tarjoavat pääsyn suojauksen ja nimitilan hallinnan. Käyttöliittymä on viitetyyppi, joka muistuttaa luokkaa, joka on kokoelma abstrakteja menetelmiä. Paketti auttaa luokittelemaan luokat järjestelmällisesti, jotta niihin pääsee helposti ja niitä voidaan ylläpitää. Toisa alta rajapinta auttaa toteuttamaan useita perintöjä ja saavuttamaan abstraktiota. Tämä on tärkein ero Java-paketin ja käyttöliittymän välillä. Lisäksi tapa kirjoittaa paketti on pienillä kirjaimilla, kuten java.util, java.awt. Jos käyttöliittymän nimi on Area, niin se kirjoitetaan nimellä interface Area.
Yhteenveto – Paketti vs. käyttöliittymä Javassa
Paketin ja käyttöliittymän ero Javassa on se, että Package auttaa luokittelemaan luokat järjestelmällisesti, jotta niitä voidaan käyttää ja ylläpitää helposti, kun taas Interface auttaa toteuttamaan useita periytymiä ja saavuttamaan abstraktion.