Razlika između paketa i sučelja na Javi

Autor: Laura McKinney
Datum Stvaranja: 2 Travanj 2021
Datum Ažuriranja: 3 Srpanj 2024
Anonim
9. Programiranje - JAVA - ECLIPSE - Apstraktne klase i Interfejsi
Video: 9. Programiranje - JAVA - ECLIPSE - Apstraktne klase i Interfejsi

Sadržaj


Paketi i sučelja djeluju kao spremnik. Sadržaj u paketima i sučeljima klase mogu koristiti uvozom i primjenom na odgovarajući način. Osnovna razlika između paketa i sučelja je u tome što paket sadrži grupu klasa i sučelja, dok sučelje sadrži metode i polja. Proučimo neke druge razlike pomoću grafikona za usporedbu.

  1. Usporedni grafikon
  2. definicija
  3. Ključne razlike
  4. Zaključak

Usporedni grafikon

Osnove 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 kreiraju pomoću ključne riječi "Paket".Sučelje se izrađuje pomoću ključne riječi "sučelje".
Sintaksaime_paketa_ime;
javna klasa_naziv {
.
(tijelo klase)
.
}
sučelje sučelja sučelja {
varijabilna deklaracija;
deklaracija metode;
}
PristupPaket se može uvesti Sučelje se može proširiti drugim sučeljem i implementirati klasa.
Pristupite ključnoj riječi Paketi se mogu uvesti pomoću ključne riječi "import".Sučelja se mogu implementirati pomoću ključne riječi "implementirati".


Definicija paketa

Paketi su zbirka ili skupina različitih klasa i sučelja. Razredi u pakovanjima međusobno su povezani u određenom opsegu ili nasljeđuju. Možete također kreirati svoj paket i koristiti ga za svoj program.

Izrada paketa

Za izradu paketa samo slijedite sljedeće korake.

  1. Otvorite datoteku, a zatim na vrhu datoteke deklarirajte ime paketa, kao što je naziv paketa ime koje želite dati paketu.
  2. Zatim odredite klasu koju želite staviti u paket i zapamtite da ste je proglasili javno.
  3. Spremite datoteku kao .java datoteku i sastavite datoteku, a zatim je .cclass za tu datoteku.
  4. Za izradu paketa za ovu datoteku upotrijebljena je naredba "javac -d. file_name.java. Možete vidjeti da je paket stvoren u datoteci ".class" u trenutnoj mapi. Da biste ga postavili u nadređeni direktorij koristite "javac -d. , naredba file_name.java ”.
  5. Možete stvoriti i potpakete tako što ćete na vrhu datoteke deklarirati naziv podpakovke.

paket Mypackage; javna klasa myclass {public void displayMypackage () {system.out.ln ("metoda displayMypackage klase myclass od paketa Mypackage"); }

Korištenje paketa


Paketi kreirani ili dostupni u imeniku mogu se koristiti u programu pomoću izvoza uvoza. Ključna riječ koja se koristi za uvoz bilo kojeg paketa u vašem programu je "uvoz". Izvoz uvoza može se napisati na dva načina ili možete reći da postoje dva načina za pristup bilo kojem paketu. Prvo, ako želite koristiti određenu klasu iz paketa, ključnoj riječi "import" slijedi ime paketa, a zatim slijedi operator točke i naziv klase koji želite koristiti iz paketa. Drugo, ako želite koristiti mnoge klase koje se nalaze u paketima, tada ključnoj riječi uvoz slijedi ime paketa, a zatim točka i operator "*".

import package_name. CLASS_NAME; ili uvesti ime_paketa. *;

U gornjem kôdu možete vidjeti znak * koji pokazuje da druga metoda uvozi sve klase koje se nalaze u paketima.

Sada, pogledajmo upotrebu paketa sa primjerom.

uvoz Mypackage. myclass {klasa TestMypackage {javni statički void main (string args) {myclass ob1 = novi myclass (); ob1.displayMypackage (); }} // prikaz izlazne metodeMypackage klase myclass od paketa Mypackage.

U gornjem kôdu, klasa TestMypackage uvezla je 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 se moraju inicijalizirati u trenutku deklaracije. Metode koje je sučelje proglasilo definira klasa koja implementira to sučelje u skladu sa svojim zahtjevom. Kako metode u sučelju ne obavljaju nikakvu funkciju, tako nema upotrebe za stvaranje bilo kojeg objekta sučelja. Dakle, nijedan se objekt ne može stvoriti za sučelje.

Sučelje može naslijediti i drugo sučelje, ali klasa koja nasljeđuje takvo sučelje također mora implementirati sve metode naslijeđenog sučelja. Kako su polja inicijalizirana u trenutku njihove deklaracije na sučelju, tako da nema potrebe za konstruktorom u sučelju, sučelje ne sadrži nijedan 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 Circle implementira područje {float find_area (float a, float b) {return (pi * a * a); } Oblici klase {javni statički void main (string args) {Područje A = novo područje (); Krug C = novi krug (); A = C; pluta F = Područje. find_area (10,10); system.out.ln ("Područje kruga je:" + F); }

U gornjem kôdu, stvorili smo sučelje Area, a klasa Circle je implementirala sučelje Area. Polje "pi" inicijalizirano je u sučelju u vrijeme njegove deklaracije. Krug klase definirao je apstraktnu metodu područja klase u skladu sa svojim zahtjevom.

  1. Paket je skupina klasa i sučelja zajedno, dok je sučelje skupina apstraktnih metoda.
  2. Paket se kreira pomoću ključne riječi paket dok se sučelje stvara pomoću ključne riječi sučelje.
  3. Ako će se koristiti klasa ili sučelje unutar paketa, paketis treba uvesti dok se sučelje mora implementirati.

Zaključak:

Paketi i sučelje su spremnici. Paket smanjuje veličinu koda dok upravo uvozimo klasu koja se koristi umjesto da ga ponovo definiramo.Dok sučelje smanjuje zbrke nastale tijekom višestrukog nasljeđivanja, jer u slučaju više nasljeđivanja klasa nasljeđivanja ne mora odlučiti koja će definicija metode koju treba naslijediti, već definira svoju.