Razlika između paketa i interfejsa u Javi

Sadržaj:

Razlika između paketa i interfejsa u Javi
Razlika između paketa i interfejsa u Javi

Video: Razlika između paketa i interfejsa u Javi

Video: Razlika između paketa i interfejsa u Javi
Video: Differentiating Types of BCMA-Targeted Therapies in RRMM 2024, Juli
Anonim

Ključna razlika između paketa i interfejsa u Javi je u tome što Package pomaže metodično kategorizirati klase kako bi im se pristupio i održavao lako dok sučelje pomaže u implementaciji višestrukog nasljeđivanja i postizanju apstrakcije.

Java je jedan od najpopularnijih programskih jezika. Glavna prednost Jave je ta što podržava objektno orijentirano programiranje. Ova metodologija omogućava modeliranje objekata stvarnog svijeta u softveru. Klasa je nacrt za kreiranje objekta. Svaki objekt sadrži podatke ili polja za opisivanje atributa ili svojstva i metode za opisivanje ponašanja. Ovaj članak govori o dva koncepta vezana za OOP u Javi u Javi, a to su Paket i Interfejs.

Šta je paket u Javi?

Java pruža veliki broj klasa. Čuvanje svih klasa u jednom folderu može biti teško jer mu je teško pristupiti. Ovo može uticati na upravljivost programa. Java koristi pakete da organizuje klase. Slično je folderu. Java API grupiše klase u različite pakete prema funkcionalnosti. Stoga, svaki paket sadrži srodni skup klasa.

Primjer paketa u Javi

Nekoliko primjera paketa su sljedeći. java.io paket sadrži ulazne i izlazne klase podrške. Uključuje File, PrintStream, BufferInputStream itd. java.net paket sadrži klase povezane s umrežavanjem. Neki primjeri su URL, Socket, ServerSocket. Paket java.awt sadrži sve klase potrebne za izgradnju grafičkih korisničkih interfejsa. Ovo je nekoliko Java API paketa.

Kada programer želi da koristi određenu klasu u programu, treba da uveze taj paket. Ako programer želi da koristi klasu BufferInputStream u java.io paketu, treba da napiše import naredbu na sledeći način.

import java.util. BufferInoutStream;

Naredba ispod će uvesti sve klase u util paketu.

import java.util.;

Takođe je moguće kreirati korisnički definisane pakete.

paketni zaposlenik;

javna klasa Zaposleni {

}

Prema gornjem primjeru, zaposlenik je naziv paketa. Klasa Employee je dio paketa zaposlenih. Ovaj fajl se sprema kao Employee.java u paket zaposlenih.

Dalje, moguće je uvesti javnu klasu iz jednog paketa u drugi. Pogledajte sljedeći primjer.

Razlika između paketa i interfejsa u Javi
Razlika između paketa i interfejsa u Javi
Razlika između paketa i interfejsa u Javi
Razlika između paketa i interfejsa u Javi

Slika 01: Klasa A

Razlika između paketa i interfejsa u Javi_slika 2
Razlika između paketa i interfejsa u Javi_slika 2
Razlika između paketa i interfejsa u Javi_slika 2
Razlika između paketa i interfejsa u Javi_slika 2

Slika 02: Klasa B

Klasa A je u paketu 1 i sadrži javni metod koji se zove display. Klasa B je u paketu 2 i sadrži glavnu metodu. Iako su u odvojenim pakovanjima; klasa B može kreirati objekat klase A uvozom package1. Nakon uvoza paketa 1, klasa B ima pristup podacima i metodama klase A.

Sve u svemu, paket u Javi pomaže u organizaciji projektnih datoteka. Ovo je veoma korisno kada se razvija veliki sistem jer omogućava pohranjivanje svih fajlova na metodičan način. Pored toga, Java API paketi omogućavaju programerima da koriste već postojeće klase.

Šta je interfejs u Javi?

Ponekad programer možda ne zna definiciju metode. U ovim situacijama, programer može samo deklarirati metodu. Apstraktna metoda je metoda koja nema definiciju. Ima samo deklaraciju. Kada postoji barem jedna apstraktna metoda, ta klasa postaje apstraktna klasa. Štaviše, apstraktna klasa može sadržavati apstraktne metode kao i neapstraktne metode. Programer ne može kreirati objekte iz apstraktnih klasa.

Kada klasa proširuje apstraktnu klasu, nova klasa treba da definiše sve apstraktne metode u apstraktnoj klasi. Drugim riječima, pretpostavimo da apstraktna klasa A ima apstraktni metod koji se zove display. Klasa B proširuje klasu A. Tada bi klasa B trebala definirati prikaz metode.

Primjer interfejsa u Javi

Pretpostavimo da su i A i B apstraktne klase. Ako je klasa C proširenje A i B, ta klasa C mora definirati apstraktne metode obje klase. Ovo je višestruko nasljeđivanje. Java ne podržava višestruko nasljeđivanje. Da bi ga implementirao, programer bi trebao koristiti interfejse. Ako su A i B sučelja, onda ih klasa C može implementirati. Pogledajte sljedeći primjer.

Razlika između paketa i interfejsa u Javi_slika 3
Razlika između paketa i interfejsa u Javi_slika 3
Razlika između paketa i interfejsa u Javi_slika 3
Razlika između paketa i interfejsa u Javi_slika 3

Slika 03: Interfejs A

Razlika između paketa i interfejsa u Javi_slika 4
Razlika između paketa i interfejsa u Javi_slika 4
Razlika između paketa i interfejsa u Javi_slika 4
Razlika između paketa i interfejsa u Javi_slika 4

Slika 04: Interfejs B

Sučelje A ima apstraktnu metodu display1, a interfejs B ima apstraktnu metodu display2.

Razlika između paketa i interfejsa u Javi_slika 5
Razlika između paketa i interfejsa u Javi_slika 5
Razlika između paketa i interfejsa u Javi_slika 5
Razlika između paketa i interfejsa u Javi_slika 5

Slika 05: Klasa C

Klasa C implementira i A i B interfejs. Stoga bi trebalo definirati obje metode.

Ključna razlika između paketa i interfejsa u Javi
Ključna razlika između paketa i interfejsa u Javi
Ključna razlika između paketa i interfejsa u Javi
Ključna razlika između paketa i interfejsa u Javi

Slika 06: Glavni metod

Sada u glavnoj metodi, moguće je kreirati objekat C i pozvati obe metode. Isto tako, interfejsi pomažu u implementaciji višestrukog nasljeđivanja u Javi.

Osim višestrukog nasljeđivanja, interfejsi pomažu u postizanju apstrakcije. To je jedan od glavnih koncepta u OOP-u. Apstrakcija omogućava sakrivanje detalja implementacije i prikaz samo funkcionalnosti korisniku. Nadalje, omogućava fokusiranje na ono što objekt radi umjesto na to kako se radi. Kako se interfejs sastoji od apstraktnih metoda, pomaže arhiviranju apstrakcije.

Koja je razlika između paketa i interfejsa u Javi?

Paket je grupa srodnih klasa koje pružaju zaštitu pristupa i upravljanje prostorom imena. Interfejs je referentni tip sličan klasi koja je zbirka apstraktnih metoda. Paket pomaže da se klase metodično kategoriziraju kako bi im se lako pristupilo i održavalo. S druge strane, Interface pomaže u implementaciji višestrukog nasljeđivanja i postizanju apstrakcije. Ovo je glavna razlika između paketa i interfejsa u Javi. Nadalje, način pisanja paketa je malim slovima kao što su java.util, java.awt. Ako je ime interfejsa Area, onda je upisano u, interfejs Area.

Razlika između paketa i interfejsa u Javi u tabelarnom obliku
Razlika između paketa i interfejsa u Javi u tabelarnom obliku
Razlika između paketa i interfejsa u Javi u tabelarnom obliku
Razlika između paketa i interfejsa u Javi u tabelarnom obliku

Sažetak – Paket vs Interface u Javi

Razlika između paketa i interfejsa u Javi je u tome što paket pomaže u metodičnoj kategorizaciji klasa kako bi im se lako pristupio i održavao, dok sučelje pomaže u implementaciji višestrukog nasljeđivanja i postizanju apstrakcije.

Preporučuje se: