Razlika između paketa i sučelja u Javi

Sadržaj:

Razlika između paketa i sučelja u Javi
Razlika između paketa i sučelja u Javi

Video: Razlika između paketa i sučelja u Javi

Video: Razlika između paketa i sučelja u Javi
Video: RAZLIKA IZMEĐU AT THE END I IN THE END U ENGLESKOM JEZIKU 2024, Studeni
Anonim

Ključna razlika između paketa i sučelja u Javi je ta što paket pomaže metodično kategorizirati klase kako bi im se lako pristupilo i održavalo, 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 što podržava objektno orijentirano programiranje. Ova metodologija omogućuje modeliranje objekata stvarnog svijeta u softveru. Klasa je nacrt za stvaranje objekta. Svaki objekt sadrži podatke ili polja za opisivanje atributa ili svojstava i metoda za opisivanje ponašanja. Ovaj članak govori o dva koncepta vezana uz OOP u Javi u Javi, a to su paket i sučelje.

Što je paket u Javi?

Java nudi veliki broj klasa. Čuvanje svih razreda u jednoj mapi može biti teško jer joj je teško pristupiti. To može utjecati na upravljivost programa. Java koristi pakete za organiziranje klasa. Slično je mapi. Java API grupira klase u različite pakete prema funkcionalnosti. Stoga svaki paket sadrži povezani skup klasa.

Primjer paketa u Javi

Nekoliko primjera paketa su sljedeći. Paket java.io sadrži klase za podršku ulaza i izlaza. Uključuje File, PrintStream, BufferInputStream itd. Paket java.net 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 sučelja. Ovo je nekoliko Java API paketa.

Kada programer želi koristiti određenu klasu u programu, treba uvoziti taj paket. Ako programer želi koristiti klasu BufferInputStream u paketu java.io, trebao bi napisati naredbu za uvoz na sljedeći način.

import java.util. BufferInoutStream;

Donja izjava će uvesti sve klase u pomoćnom paketu.

import java.util.;

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

zaposlenik paketa;

javni zaposlenik klase {

}

Prema gornjem primjeru, zaposlenik je naziv paketa. Klasa zaposlenika dio je paketa zaposlenika. Ova se datoteka sprema kao Employee.java u paket zaposlenika.

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

Razlika između paketa i sučelja u Javi
Razlika između paketa i sučelja u Javi
Razlika između paketa i sučelja u Javi
Razlika između paketa i sučelja u Javi

Slika 01: Klasa A

Razlika između paketa i sučelja u Javi_Slika 2
Razlika između paketa i sučelja u Javi_Slika 2
Razlika između paketa i sučelja u Javi_Slika 2
Razlika između paketa i sučelja u Javi_Slika 2

Slika 02: Klasa B

Klasa A nalazi se u paketu 1 i sadrži javnu metodu koja se zove display. Klasa B je u paketu 2 i sadrži glavnu metodu. Iako su u zasebnim pakiranjima; klasa B može kreirati objekt klase A uvozom package1. Nakon uvoza paketa 1, klasa B ima pristup podacima i metodama klase A.

Sve u svemu, Package u Javi pomaže organizirati datoteke projekta. Ovo je vrlo korisno kada se razvija veliki sustav jer omogućuje pohranu svih datoteka na metodičan način. Uz to, Java API paketi omogućuju programerima korištenje već postojećih klasa.

Što je sučelje 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. Štoviš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 definirati sve apstraktne metode u apstraktnoj klasi. Drugim riječima, pretpostavimo da apstraktna klasa A ima apstraktnu metodu koja se zove prikaz. Klasa B proširuje klasu A. Tada bi klasa B trebala definirati prikaz metode.

Primjer sučelja u Javi

Pretpostavimo da su i A i B apstraktne klase. Ako klasa C proširuje 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 sučelja. Ako su A i B sučelja, onda ih klasa C može implementirati. Pogledajte sljedeći primjer.

Razlika između paketa i sučelja u Javi_Slika 3
Razlika između paketa i sučelja u Javi_Slika 3
Razlika između paketa i sučelja u Javi_Slika 3
Razlika između paketa i sučelja u Javi_Slika 3

Slika 03: Sučelje A

Razlika između paketa i sučelja u Javi_Slika 4
Razlika između paketa i sučelja u Javi_Slika 4
Razlika između paketa i sučelja u Javi_Slika 4
Razlika između paketa i sučelja u Javi_Slika 4

Slika 04: Sučelje B

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

Razlika između paketa i sučelja u Javi_Slika 5
Razlika između paketa i sučelja u Javi_Slika 5
Razlika između paketa i sučelja u Javi_Slika 5
Razlika između paketa i sučelja u Javi_Slika 5

Slika 05: Klasa C

Klasa C implementira i A i B sučelja. Stoga bi trebao definirati obje metode.

Ključna razlika između paketa i sučelja u Javi
Ključna razlika između paketa i sučelja u Javi
Ključna razlika između paketa i sučelja u Javi
Ključna razlika između paketa i sučelja u Javi

Slika 06: Glavna metoda

Sada je u glavnoj metodi moguće kreirati objekt u C-u i pozvati obje metode. Isto tako, sučelja pomažu implementirati višestruko nasljeđivanje u Javi.

Osim višestrukog nasljeđivanja, sučelja pomažu u postizanju apstrakcije. To je jedan od glavnih koncepta u OOP-u. Apstrakcija omogućuje skrivanje detalja implementacije i prikazivanje samo funkcionalnosti korisniku. Nadalje, omogućuje fokusiranje na ono što objekt radi umjesto na to kako se radi. Budući da se sučelje sastoji od apstraktnih metoda, pomaže u arhiviranju apstrakcije.

Koja je razlika između paketa i sučelja u Javi?

Paket je grupa povezanih klasa koje pružaju zaštitu pristupa i upravljanje prostorom imena. Sučelje je referentni tip sličan klasi koja je zbirka apstraktnih metoda. Paket pomaže metodično kategorizirati klase kako bi im se lako pristupilo i održavalo. S druge strane, sučelje pomaže u implementaciji višestrukog nasljeđivanja i postizanju apstrakcije. Ovo je glavna razlika između paketa i sučelja u Javi. Nadalje, način pisanja paketa je malim slovima kao što su java.util, java.awt. Ako je naziv sučelja Područje, tada je napisano u Područje sučelja.

Razlika između paketa i sučelja u Javi u tabličnom obliku
Razlika između paketa i sučelja u Javi u tabličnom obliku
Razlika između paketa i sučelja u Javi u tabličnom obliku
Razlika između paketa i sučelja u Javi u tabličnom obliku

Sažetak – Paket naspram sučelja u Javi

Razlika između paketa i sučelja u Javi je u tome što paket pomaže metodično kategorizirati klase kako bi im se lako pristupilo i održavalo dok sučelje pomaže u implementaciji višestrukog nasljeđivanja i postizanju apstrakcije.

Preporučeni: