Erinevus Java paketi ja liidese vahel

võtme erinevus paketi ja Java-liidese vahel on see Pakett aitab klasse klassifitseerida, et neile hõlpsalt juurde pääseda ja neid säilitada, samas kui liides aitab rakendada mitmeid pärandusi ja abstraktsiooni.

Java on üks populaarsemaid programmeerimiskeeli. Java peamine eelis on see, et see toetab objektorienteeritud programmeerimist. See metoodika võimaldab modelleerida reaalmaailma objekte tarkvaras. Klass on objekti loomise plaan. Iga objekt sisaldab andmeid või välju, et kirjeldada atribuute või omadusi ja meetodeid käitumise kirjeldamiseks. Selles artiklis käsitletakse kahte Java OOP-iga seotud mõistet - pakett ja liides.

SISU

1. Ülevaade ja peamised erinevused
2. Mis on Java pakett?
3. Mis on Java liides?
4. Kõrvuti võrdlus - pakett vs liides Java-s tabelina
5. Kokkuvõte

Mis on Java pakett?

Java pakub suurt hulka klasse. Kõigi klasside ühte kausta pidamine võib olla keeruline, kuna sellele on raske juurde pääseda. See võib mõjutada programmi juhitavust. Java kasutab tundide korraldamiseks pakette. See sarnaneb kaustaga. Java API rühmitab klassid vastavalt funktsionaalsusele eri pakettidesse. Seetõttu sisaldab iga pakett seotud klassikomplekti.

Näide Java pakettidest

Vähesed näidispaketid on järgmised. Pakett java.io sisaldab sisend- ja väljundklasse. See sisaldab File, PrintStream, BufferInputStream jne. Pakett java.net sisaldab võrguga seotud klasse. Mõned näited on URL, Socket, ServerSocket. Pakett java.awt sisaldab kõiki graafiliste kasutajaliideste loomiseks vajalikke klasse. Need on vähe Java API pakette.

Kui programmeerija soovib programmis kasutada teatud klassi, peaks ta selle paketi importima. Kui programmeerija soovib paketis java.io kasutada klassi BufferInputStream, peaks ta kirjutama impordiavalduse järgmiselt.

import java.util.BufferInoutStream;

Allpool toodud avaldus impordib kõik paketid klassides.

import java.util. *;

Samuti on võimalik luua kasutaja määratletud pakette.

paki töötaja;

avaliku klassi töötaja

Ülaltoodud näite kohaselt on töötaja paketi nimi. Töötajate klass on osa töötaja paketist. See fail salvestatakse kui Employee.java töötaja paketti.

Lisaks on võimalik avalikku klassi importida ühest pakendist teise. Vaadake järgmist näidet.

Joonis 01: A-klass

Joonis 02: B-klass

Klass A on pakendis 1 ja see sisaldab avalikku meetodit nimega display. B-klass on pakendis 2 ja see sisaldab peamist meetodit. Isegi kui need on eraldi pakendites; klass B saab luua klassi A objekti, importides paketi1. Pärast pakendi 1 importimist on klassil B juurdepääs klassi A andmetele ja meetoditele.

Üldiselt aitab Java pakett projektifaile korraldada. See on suure süsteemi arendamisel väga kasulik, kuna see võimaldab kõiki faile metoodiliselt säilitada. Lisaks võimaldavad Java API paketid programmeerijatel kasutada juba olemasolevaid klasse.

Mis on Java liides??

Mõnikord ei pruugi programmeerija meetodi määratlust teada. Sellistes olukordades saab programmeerija vaid meetodi deklareerida. Abstraktne meetod on meetod, millel puudub määratlus. Sellel on ainult deklaratsioon. Kui on olemas vähemalt üks abstraktne meetod, saab sellest klassist abstraktse klassi. Veelgi enam, abstraktne klass võib sisaldada nii abstraktseid kui ka mitteabstraktseid meetodeid. Programmeerija ei saa abstraktsetest klassidest objekte luua.

Kui klass laiendab abstraktset klassi, peaks uus klass määratlema abstraktses klassis kogu abstraktse meetodi. Teisisõnu, oletagem, et abstraktsel klassil A on abstraktse meetod, mida nimetatakse kuvamiseks. Klass B laiendab klassi A. Seejärel peaks klass B määratlema meetodi kuvamise.

Näide Java liidesest

Oletame, et nii A kui ka B on abstraktsed klassid. Kui klass C laieneb A ja B, peab see klass C määratlema mõlema klassi abstraktsed meetodid. See on mitmekordne pärimine. Java ei toeta mitut pärimist. Selle rakendamiseks peaks programmeerija kasutama liideseid. Kui A ja B on liidesed, saab klass C neid rakendada. Vaadake järgmist näidet.

Joonis 03: Liides A

Joonis 04: Liides B

Liidesel A on abstraktne meetod display1 ja liidesel B on abstraktsel meetodil display2.

Joonis 05: C-klass

C klass rakendab nii A kui ka B liideseid. Seetõttu peaks see määratlema mõlemad meetodid.

Joonis 06: Põhimeetod

Nüüd põhimeetodi korral on võimalik luua C objekt ja kutsuda mõlemad meetodid. Samuti aitavad liidesed Java-s mitme pärimise rakendamist.

Liidesed, mis ei hõlma mitut pärimist, aitavad abstraktsiooni saavutada. See on üks peamisi kontseptsioone OOP-s. Abstraktsioon võimaldab peita rakenduse üksikasju ja näidata kasutajale ainult funktsionaalsust. Lisaks võimaldab see keskenduda sellele, mida objekt teeb, selle asemel, kuidas seda tehakse. Kuna liides koosneb abstraktsetest meetoditest, aitab see abstraktsiooni arhiivida.

Mis vahe on Java paketil ja liidesel??

Pakett on seotud klasside rühm, mis pakub juurdepääsu kaitset ja nimeruumi haldamist. Liides on klassiga sarnane võrdlustüüp, mis koosneb abstraktsetest meetoditest. Pakett aitab klasse klassifitseerida, et neile hõlpsasti juurde pääseda ja neid hallata. Teisest küljest aitab liides rakendada mitut pärandit ja abstraktsiooni. See on peamine erinevus Java paketi ja liidese vahel. Lisaks on paketi kirjutamise viisiks väiketähed, näiteks java.util, java.awt. Kui liidese nimi on Area, kirjutatakse see liidese Area sisse.

Kokkuvõte - Java vs pakett vs liides

Erinevus paketi ja liidese vahel Java-s seisneb selles, et pakett aitab klasse kategoriseerida, et neile hõlpsasti juurde pääseda ja neid hooldada, samas kui liides aitab rakendada mitmeid pärandusi ja abstraktsiooni.

Viide:

1.Tutorials point. “Java paketid”. Õppematerjalide punkt, 24. märts 2018. Saadaval siin 
2.Tutorials point. Java liidesed. Õppematerjalide punkt, 24. märts 2018. Saadaval siin