Rozdiel medzi balíkom a rozhraním v jazyku Java

kľúčový rozdiel medzi balíkom a rozhraním v jazyku Java je to Balík pomáha triediť triedy metodicky tak, aby k nim bol jednoduchý prístup a ich údržba, zatiaľ čo rozhranie pomáha implementovať viacnásobné dedičstvo a dosiahnuť abstrakciu.

Java je jedným z najpopulárnejších programovacích jazykov. Hlavnou výhodou Java je, že podporuje objektovo orientované programovanie. Táto metodika umožňuje modelovanie objektov v reálnom svete v softvéri. Trieda je plán na vytvorenie objektu. Každý objekt obsahuje údaje alebo polia na opis atribútov alebo vlastností a metód na opis správania. Tento článok popisuje dva koncepty súvisiace s OOP v Jave v Jave, ktoré sú Package and Interface.

OBSAH

1. Prehľad a kľúčový rozdiel
2. Čo je balík v jazyku Java
3. Čo je rozhranie v jazyku Java
4. Porovnanie vedľa seba - balík verzus rozhranie v jazyku Java v tabuľkovej forme
5. Zhrnutie

Čo je balík v jazyku Java?

Java poskytuje veľké množstvo tried. Udržať všetky triedy v jednom priečinku môže byť ťažké, pretože je ťažko prístupný. To môže ovplyvniť spravovateľnosť programu. Java používa balíčky na usporiadanie tried. Je podobný priečinku. Java API zoskupuje triedy do rôznych balíkov podľa funkcie. Preto každé balenie obsahuje súvisiacu skupinu tried.

Príklad balíkov v jazyku Java

Nasleduje niekoľko príkladov balíčkov. Balík java.io obsahuje podporné triedy vstupu a výstupu. Zahŕňa súbor, PrintStream, BufferInputStream atď. Balík java.net obsahuje triedy súvisiace so sieťami. Niektoré príklady sú URL, Socket, ServerSocket. Balík java.awt obsahuje všetky triedy potrebné na vytváranie grafických používateľských rozhraní. To je málo balíkov Java API.

Ak chce programátor v programe použiť určitú triedu, mal by tento balík importovať. Ak chce programátor v balíku java.io použiť triedu BufferInputStream, mal by napísať príkaz na import nasledujúcim spôsobom:.

importovať java.util.BufferInoutStream;

Nižšie uvedený príkaz naimportuje všetky triedy v balíku util.

importovať java.util. *;

Je tiež možné vytvoriť užívateľsky definované balíčky.

zamestnanec balíka;

zamestnanec verejnej triedy

Podľa vyššie uvedeného príkladu je zamestnancom názov balíka. Trieda Zamestnanec je súčasťou balíka pre zamestnancov. Tento súbor sa uloží do súboru Employee.java ako Employee.java.

Ďalej je možné importovať verejnú triedu z jedného balíka do druhého. Pozrite si nasledujúci príklad.

Obrázok 01: Trieda A

Obrázok 02: Trieda B

Trieda A je v balíku 1 a obsahuje verejnú metódu nazývanú display. Trieda B je v balíčku 2 a obsahuje hlavnú metódu. Aj keď sú v samostatných baleniach; trieda B môže vytvoriť objekt triedy A importom balíka1. Po importovaní balíka 1 má trieda B prístup k údajom a metódam triedy A.

Balík v jazyku Java celkovo pomáha pri organizovaní súborov projektu. To je veľmi užitočné pri vývoji veľkého systému, pretože to umožňuje metodické ukladanie všetkých súborov. Balíky Java API navyše umožňujú programátorom používať už existujúce triedy.

Čo je rozhranie v jazyku Java?

Programátor niekedy nemusí poznať definíciu metódy. V týchto situáciách môže programátor deklarovať iba metódu. Abstraktná metóda je metóda, ktorá nemá definíciu. Má iba vyhlásenie. Ak existuje aspoň jedna abstraktná metóda, táto trieda sa stane abstraktnou triedou. Navyše, abstraktná trieda môže obsahovať abstraktné metódy, ako aj ne-abstraktné metódy. Programátor nemôže vytvárať objekty z abstraktných tried.

Keď trieda rozširuje abstraktnú triedu, nová trieda by mala definovať všetku abstraktnú metódu v abstraktnej triede. Inými slovami, predpokladajme, že abstraktná trieda A má abstraktnú metódu nazývanú displej. Trieda B rozširuje triedu A. Potom trieda B by mala definovať zobrazenie metódy.

Príklad rozhrania v jazyku Java

Predpokladajme, že obidve A a B sú abstraktné triedy. Ak trieda C rozširuje A a B, musí táto trieda C definovať abstraktné metódy oboch tried. Toto je viacnásobné dedičstvo. Java nepodporuje viacnásobné dedičstvo. Na jeho implementáciu by mal programátor používať rozhrania. Ak sú A a B rozhrania, potom ich môže implementovať trieda C. Pozri nasledujúci príklad.

Obrázok 03: Rozhranie A

Obrázok 04: Rozhranie B

Rozhranie A má abstraktnú metódu display1 a rozhranie B má abstraktnú metódu display2.

Obrázok 05: Trieda C

Trieda C implementuje rozhrania A aj B. Preto by mala definovať obe metódy.

Obrázok 06: Hlavná metóda

Teraz v hlavnej metóde je možné vytvoriť objekt C a zavolať obidve metódy. Rozhrania tiež pomáhajú implementovať viacnásobné dedičstvo v Jave.

Rozhrania okrem viacnásobného dedičstva pomáhajú dosiahnuť abstrakciu. Je to jeden z hlavných konceptov OOP. Abstrakcia umožňuje skryť podrobnosti implementácie a používateľovi zobraziť iba funkčnosť. Ďalej umožňuje zamerať sa na to, čo objekt robí, ako na to, ako sa to robí. Pretože rozhranie pozostáva z abstraktných metód, pomáha archivovať abstrakcie.

Aký je rozdiel medzi balíkom a rozhraním v jazyku Java?

Balík je skupina príbuzných tried, ktoré poskytujú ochranu prístupu a správu namespace. Rozhranie je referenčný typ podobný triede, čo je zbierka abstraktných metód. Balík pomáha triediť triedy metodicky, aby k nim bol ľahký prístup a údržba. Na druhej strane, Interface pomáha implementovať viacnásobné dedičstvo a dosiahnuť abstrakciu. Toto je hlavný rozdiel medzi balíkom a rozhraním v jazyku Java. Ďalej je možné spôsob písania balíka napísať malými písmenami ako java.util, java.awt. Ak je názov rozhrania Area, zapíše sa do položky Area Area.

Zhrnutie - balík vs rozhranie v Jave

Rozdiel medzi balíkom a rozhraním v jazyku Java spočíva v tom, že balík pomáha systematicky triediť triedy, aby sa k nim ľahko pristupovalo a udržiavali, zatiaľ čo rozhranie pomáha implementovať viaceré dedičstvá a dosiahnuť abstrakciu..

referencie:

1. Príručky Bod. „Balíky Java.“ Výukové programy Point, 24. marca 2018. K dispozícii tu 
2. Príručky Bod. „Rozhrania Java.“ Výukové programy Point, 24. marca 2018. K dispozícii tu