Preporučeno, 2024

Izbor Urednika

Razlika između paketa i sučelja u Javi

Paketi i sučelja djeluju kao spremnik. Sadržaji paketa i sučelja mogu se koristiti klasama uvoženjem i primjenom. Osnovna razlika između paketa i sučelja je u tome što paket sadrži skupinu klasa i sučelja, dok sučelje sadrži metode i polja. Proučimo neke druge razlike uz pomoć usporedne tablice.

Tablica usporedbe

Osnova za usporedbupaketisučelja
Osnovni, temeljniPaketi su skupina klasa i / ili sučelja zajedno.Sučelja su skupina apstraktnih metoda i konstantnih polja.
RiječPaketi se izrađuju pomoću ključne riječi "Paket".Sučelje se stvara pomoću ključne riječi "Interface".
Sintaksapaket package_name;
public class class_name {
,
(tijelo klase)
,
}
sučelje interface_name {
izjava varijable;
izjava o metodi;
}
PristupPaket se može uvestiSučelje se može proširiti drugim sučeljem i implementirati u klasu.
Pristupite ključnoj riječiPakete se može uvesti pomoću ključne riječi "import".Sučelja se mogu implementirati pomoću ključne riječi "implement".

Definicija paketa

Paketi su zbirka ili skupine različitih klasa i sučelja. Klase u paketima međusobno su povezane u nekom opsegu ili nasljeđivanjem. Također možete stvoriti svoj paket i koristiti ga za svoj program.

Stvaranje paketa

Za kreiranje paketa slijedite sljedeće korake.

  1. Otvorite datoteku i potom deklarirajte ime paketa na vrhu datoteke, kao što je [package package_name; ] ime paketa je ime koje želite dati paketu.
  2. Zatim definirate klasu koju želite staviti u paket i zapamtite da je objavljujete javno.
  3. Spremite datoteku kao .java datoteku, a zatim kompajlirajte datoteku, zatim se za tu datoteku dobiva ”.class”.
  4. Za izradu paketa za ovu datoteku koristi se naredba “javac -d. file_name.java. Možete vidjeti da je paket stvoren koji sadrži datoteku ".class" u trenutnom direktoriju. Da biste ga smjestili u roditeljski direktorij, koristite “javac -d., naredba file_name.java.
  5. Također možete kreirati pod-paket deklariranjem imena paketa kao [package package_name1. package_name2; ] na vrhu datoteke.
 paket Mypackage; public class myclass {javni void displayMypackage () {system.out.println ("prikaz metodeMypackage klase myclass paketa Mypackage"); } 

Korištenje paketa

Paketi stvoreni ili dostupni u direktoriju mogu se koristiti u programu pomoću izraza import. Ključna riječ koja se koristi za uvoz bilo kojeg paketa u vaš program je "import". Izvoz uvoza može se napisati na dva načina, ili možete reći da postoje dva načina pristupa bilo kojem paketu. Prvo, ako želite koristiti određenu klasu iz paketa, ključna riječ "import" slijedi ime paketa koje zatim slijedi operator dot i naziv klase koji želite koristiti iz paketa. Drugo, ako želite koristiti mnoge klase koje su sadržane u paketima, ključna riječ uvoza slijedi ime paketa koje zatim slijedi točka i operator "*".

 import package_name. CLASS_NAME; ili uvesti ime_paketa. *; 

U gornjem kodu možete vidjeti znak * koji označava da druga metoda uvozi sve klase sadržane u paketima.

Pogledajmo sada uporabu paketa s primjerom.

 uvoz Mypackage. myclass {klasa TestMypackage {public static void main (string args []) {myclass ob1 = nova myclass (); ob1.displayMypackage (); }} // prikaz izlazne metodeMypackage klase myclass paketa Mypackage. 

U gornjem kodu, klasa TestMypackage je uvezla paket Mypackage i koristila njegovu metodu displayMypackage ().

Definicija sučelja

Sučelje je vrsta klase, ali se razlikuje u smislu da su metode deklarirane u sučelju apstraktne, što znači da su metode samo deklarirane, ali nisu definirane. Polja u sučelju su uvijek javna, statična, konačna. Polja moraju biti inicijalizirana u vrijeme deklaracije. Metode koje deklarira sučelje definira klasa koja implementira to sučelje u skladu sa svojim zahtjevima. Kao što metode u sučelju ne obavljaju nikakve funkcije, tako da nema koristi od stvaranja bilo kojeg objekta sučelja. Dakle, ne može se stvoriti objekt za sučelje.

Sučelje također može naslijediti drugo sučelje, ali klasa koja nasljeđuje takvo sučelje mora također implementirati sve metode naslijeđenog sučelja. Kako su polja inicijalizirana u vrijeme njihove deklaracije u sučelju, tako da nema potrebe za konstruktorom u sučelju, sučelje ne sadrži nikakav konstruktor. Pogledajmo primjer stvaranja i korištenja sučelja.

 Područje sučelja {float pi = 3, 14; float find_area (float a, float b) {} klasa Krug implementira područje {float find_area (float a, float b) {return (pi * a * a); } Oblici klasa {javni statički prazni glavni (string args []) {Područje A = novo područje (); Krug C = novi krug (); A = C; float F = Površina. find_area (10, 10); system.out.println ("Površina kruga je:" + F); } 

U gore navedenom kodu stvorili smo područje sučelja, a klasa Circle implementirala je područje sučelja. Polje “pi” je inicijalizirano u sučelju u vrijeme njegove deklaracije. Klasa klase definirala je apstraktnu metodu područja klase u skladu sa svojim zahtjevima.

Ključne razlike između paketa i sučelja u Javi

  1. Paket je skupina klasa i sučelja zajedno, dok je sučelje skup apstraktnih metoda.
  2. Paket se kreira pomoću paketa ključnih riječi, dok se sučelje kreira pomoću sučelja ključnih riječi.
  3. Ako se koristi klasa ili sučelje unutar paketa, paket se uvozi dok se mora implementirati sučelje.

Zaključak:

Oba paketa i sučelje su spremnici. Paket smanjuje veličinu koda jer samo uvozimo klasu koju ćemo koristiti umjesto da je ponovno definiramo. Dok sučelje smanjuje zbunjenost tijekom višestrukog nasljeđivanja, jer u slučaju višestrukog nasljeđivanja klasa nasljeđivanja ne mora odlučiti da definicija metode koju će naslijediti umjesto toga definira svoje.

Top