Különbség a csomag és az interfész között a Java-ban

Az kulcs különbség a csomag és a Java interfész között az A csomag segít az osztályok módszertani osztályozásában, hogy könnyen hozzáférjenek és karbantarthatók legyenek, míg az Interfész segít több öröklés megvalósításában és az absztrakció elérésében.

A Java az egyik legnépszerűbb programozási nyelv. A Java fő előnye, hogy támogatja az objektum-orientált programozást. Ez a módszertan lehetővé teszi a valós objektumok modellezését a szoftverekben. Az osztály egy objektum létrehozására szolgáló terv. Minden objektum tartalmaz adatokat vagy mezőket az attribútumok vagy a viselkedés leírására szolgáló tulajdonságok és módszerek leírására. Ez a cikk két, az OOP Java-ban kapcsolatos fogalmát tárgyalja a Java-ban, amelyek a csomag és az interfész.

TARTALOMJEGYZÉK

1. Áttekintés és a legfontosabb különbség
2. Mi a csomag a Java-ban?
3. Mi az interfész a Java-ban?
4. Side by side összehasonlítás - Csomag vs Interfész Java táblázatos formában
5. Összefoglalás

Mi a csomag a Java-ban??

A Java számos osztályt nyújt. Nehéz lehet az összes osztályt egy mappában tartani, mert nehéz hozzáférni. Ez befolyásolhatja a program menedzselhetőségét. A Java csomagokkal osztályokat rendez. Hasonló egy mappához. A Java API osztályokat különféle csomagokba csoportosít a funkcionalitás szerint. Ezért minden csomag tartalmaz kapcsolódó osztályokat.

Példa a Java csomagokra

Néhány példacsomag a következő. A java.io csomag a bemeneti és kimeneti támogató osztályokat tartalmazza. Tartalmazza a fájlt, a PrintStream-et, a BufferInputStream-t stb. A java.net csomag a hálózattal kapcsolatos osztályokat tartalmazza. Néhány példa az URL, a Socket, a ServerSocket. A java.awt csomag tartalmazza a grafikus felhasználói felületek létrehozásához szükséges összes osztályt. Ezek kevés Java API-csomag.

Ha a programozó egy bizonyos osztályt akar használni a programban, akkor azt be kell importálnia. Ha a programozó használni akarja a BufferInputStream osztályt a java.io csomagban, akkor a következőképpen kell írnia az importálási nyilatkozatot:.

import java.util.BufferInoutStream;

Az alábbi nyilatkozat az util csomag összes osztályát importálja.

import java.util. *;

Lehetőség van a felhasználó által definiált csomagok létrehozására is.

csomag alkalmazott;

nyilvános osztályú alkalmazott

A fenti példa szerint a csomag neve az alkalmazott. A munkavállalói osztály a munkavállalói csomag része. Ezt a fájlt Employee.java néven menti a munkavállalói csomagba.

Ezen felül lehetőség van nyilvános osztály importálására az egyik csomagból a másikba. Lásd a következő példát.

01. ábra: A osztály

02 ábra: B osztály

Az A osztály az 1. csomagban van, és a megjelenítésnek nevezett nyilvános módszert tartalmazza. A B osztály a 2. csomagban van, és tartalmazza a fő módszert. Annak ellenére, hogy külön csomagokban vannak; A B osztály a1 csomag importálásával létrehozhat egy A osztályú objektumot. Az 1. csomag importálása után a B osztály hozzáféréssel rendelkezik az A osztály adataihoz és módszereihez.

Összességében a Java csomagja segíti a projekt fájlok rendezését. Ez nagyon hasznos nagy rendszer fejlesztésekor, mivel lehetővé teszi az összes fájl módszertani tárolását. Ezen felül a Java API csomagok lehetővé teszik a programozók számára, hogy már meglévő osztályokat használhassanak.

Mi az a felület a Java-ban??

Előfordulhat, hogy a programozó nem ismeri a módszer meghatározását. Ilyen helyzetekben a programozó csak a módszert deklarálhatja. Az absztrakt módszer olyan módszer, amelynek nincs meghatározása. Csak nyilatkozata van. Ha van legalább egy elvont módszer, akkor az osztály elvont osztálytá válik. Ezenkívül az absztrakt osztály tartalmazhat absztrakt és nem absztrakt módszereket is. A programozó nem hozhat létre objektumokat absztrakt osztályokból.

Amikor egy osztály kiterjeszt egy absztrakt osztályt, az új osztálynak meg kell határoznia az absztrakt osztály összes absztrakt módszerét. Más szavakkal, tegyük fel, hogy az A elvont osztálynak van egy elvont módszere, az úgynevezett megjelenítés. A B osztály kiterjeszti az A osztályt. Ezután a B osztálynak meg kell határoznia a módszer megjelenítését.

Példa a Java interfészre

Tegyük fel, hogy mind A, mind B absztrakt osztályok. Ha a C osztály az A és B kiterjed, akkor a C osztálynak meg kell határoznia mindkét osztály elvont módszereit. Ez többszörös öröklés. A Java nem támogatja a többszörös öröklést. Ennek megvalósításához a programozónak interfészeket kell használnia. Ha A és B interfészek, akkor a C osztály végrehajthatja azokat. Lásd a következő példát.

03. ábra: A interfész

04. ábra: B interfész

Az A interfész rendelkezik a display1 absztrakt módszerrel, és a B interfész rendelkezik a display2 absztrakt módszerrel.

05. ábra: C osztály

A C osztály mind az A, mind a B interfészt megvalósítja. Ezért mindkét módszert meg kell határoznia.

06. ábra: Fő módszer

A fő módszerben lehetőség van egy C objektum létrehozására és mindkét módszer meghívására. Hasonlóképpen, az interfészek segítenek a többszörös öröklés megvalósításában a Java-ban.

A többszörös öröklésen kívül az interfészek segítenek az absztrakció elérésében. Ez az OOP egyik fő koncepciója. Az absztrakció lehetővé teszi a megvalósítás részleteinek elrejtését, és csak a funkcionalitás megjelenítését a felhasználó számára. Ezenkívül arra koncentrálhat, hogy az objektum mit csinál, ahelyett, hogy megtörténik. Mivel egy interfész elvont módszerekből áll, elősegíti az absztrakció archiválását.

Mi a különbség a csomag és az interfész között a Java-ban?

A csomag a kapcsolódó osztályok csoportja, amelyek hozzáférési védelmet és névtér kezelést biztosítanak. Az interfész az osztályhoz hasonló referencia típus, amely elvont módszerek gyűjteménye. A csomag segít az osztályok módszertani osztályozásában, hogy könnyen hozzáférhessenek és karbantarthassák őket. Másrészt az Interface segít több öröklés megvalósításában és az absztrakció elérésében. Ez a fő különbség a Java csomag és az interfész között. Továbbá a csomag írásának módja kisbetűs, például java.util, java.awt. Ha az interfész neve Area, akkor az be van írva, a interface felületbe.

Összegzés - Csomag vs felület Java-ban

A Java és az Interface közötti különbség az, hogy a Package módszeresen osztályozza az osztályokat, hogy könnyen hozzáférjenek és karbantarthatók legyenek, míg az Interface segít több öröklés megvalósításában és az absztrakció elérésében..

Referencia:

1.Tutorials Point. “Java csomagok.” Oktatóanyagok, 2018. március 24., elérhető itt 
2.Tutorials Point. „Java interfészek.” Oktatóanyagok, 2018. március 24., elérhető itt