Az interfész egy referencia típus, amelyet az osztályokkal való szerződés kikényszerítésére használnak. A szerződés utal arra a kötelezettségre, hogy végre kell hajtani az interfész által definiált módszereket.
Az interfészek absztrakciót biztosítanak az általuk meghatározott módszerek és a felhasználó által az osztályban megvalósított módok között. Ennek gyakorlati alkalmazása az API -kban (Application Programming Interfaces) található.
Az API -k lehetővé teszik, hogy a program kommunikáljon más programokkal anélkül, hogy tudná, hogyan valósítják meg őket. Ez fontos mind a tulajdonjogi okok miatt (a jogokat birtokló vállalat számára), mind pedig a könnyű fejlesztés érdekében.
Vessünk egy pillantást a Java interfészek használatára.
Interfészek meghatározása
Az interfész deklarálásához helyezze el a kulcsszót felület a felület neve előtt.
interfész Autó {
// állandó nyilatkozatok, ha vannak
int gumik = 4;
// módszer aláírások
int fények (int fényerő);
int turn (int gumik, húrirány) {
// valami kód
}
}
A kezelőfelület fejlécében láthatósági szintjét is felveheti a kulcsszó elé felület.
Az interfész értékei állandóak. Ezek az értékek alapértelmezés szerint nyilvános, statikus és végső. Ezért nincs szükség ezekre a kulcsszavakra az értékek deklarálásakor az interfész törzsében.
Összefüggő: A változó hatókör kezelése Java -ban
Az interfész törzse is rendelkezhet alapértelmezett, absztrakt, statikus mód. Ezek a módszerek alapértelmezés szerint nyilvános, így ezeket a hozzáférésmódosítókat nem kell feltüntetni deklarálásukkor.
Az absztrakt módszereket úgy fejezik ki, hogy elhagyják a módszer törzsének göndör zárójeleit. Lásd a fenti kód 7. sorát. A statikus metódusokat úgy deklaráljuk, hogy a metódus nevét a kulcsszóval folytatjuk statikus & alapértelmezett metódusokat a alapértelmezett módosító.
Most jó alkalom lenne megemlíteni, hogy az interfészen deklarált módszereket kell használnia minden olyan osztályban, amely ezt megvalósítja. Ha ezt nem teszi meg, a fordító "kényszeríti a szerződést", összeállítási hibát adva.
Az interfészek ezen sajátos tulajdonságainak lehetnek hátrányai. Tekintsünk egy esetet, amikor egy alkalmazásprogramozási felület (API) szolgáltatója úgy dönt, hogy további módszereket ad hozzá interfészeihez, de számos alkalmazás a régi felületeken alapul. A régi interfészeket programjaikban használó fejlesztőknek újra kell írniuk a kódjukat, ami nem praktikus.
Szóval, ez az, ahol alapértelmezett módszerek jönnek be. Lehetővé teszik az API -szolgáltatók számára, hogy további módszereket adjanak hozzá interfészeikhez, miközben bináris kompatibilitást biztosítanak a régebbi interfész verziókkal.
alapértelmezett int getDirection (karakterlánc -koordináták) {
// írjon egy kódot, hogy megadja az alapértelmezett megvalósítást
}
A fenti módszer megmutatja, hogyan hívják az alapértelmezett módszert getDirection kijelentik. Vegye figyelembe, hogy írásakor be kell vonnia egy alapértelmezett módszer megvalósítását.
Interfészek használata
Most definiáltuk az interfészeket a Java -ban, és folytathatjuk a megvalósítás módját. Ezt az alábbi részben találja.
Interfészek megvalósítása
Egy felület megvalósításához használja a kulcsszót hajtja végre ezt a szintaxist használva:
az A osztály P interfészt valósít meg {
}
Ne feledje, hogy az osztály összes interfész metódusát kell használnia. Ezt a szabályt csak akkor hagyhatja figyelmen kívül, ha az egyik módszer definíciója: alapértelmezett a felületen.
Összefüggő: Bevezetés a linkelt listák használatába a Java -ban
Ha azt szeretné, hogy az osztály több interfészt implementáljon, akkor a fejlécdeklarációban lévő vesszőkkel elválaszthatja őket.
Példa:
az A osztály P, Q, R interfészt valósít meg {
}
Ha az interfészt megvalósító osztály alosztály, használja az alábbi szintaxist:
az A osztály kiterjeszti a B eszközöket C, D {
}
Az interfészek lehetővé teszik a Java számos öröklését. Általában egy osztály csak egy osztályt bővíthet (egyetlen öröklés). Az interfészek az egyetlen módja annak, hogy a Java több öröklést is végrehajthasson.
Az interfészek más interfészeket is kiterjeszthetnek, akárcsak egy osztály egy másik osztályt. A gyermekfelület örökli a kiterjesztett felület metódusait.
Lásd az alábbi példát:
az A felület kiterjeszti a B {
}
Azon kívül, hogy alapértelmezett módszereket használ az interfész módosításához anélkül, hogy a fejlesztőknek módosítania kellene jelenlegi programjait, a meglévő felületeket is kiterjesztheti.
Most van néhány alapvető ismerete a Java interfészekről
A Java interfészei az absztrakciót demonstrálják, az objektumorientált programozás négy pillérének egyikét. A polimorfizmus egyike ennek a négy pillérnek. Arra utal, hogy a módszer sokféle formát ölthet.
A polimorfizmust a Java -ban a módszer túlterhelése vagy a módszer felülbírálása révén valósíthatja meg. A Java olvasási listájának következő lépései ezeknek a funkcióknak a megvalósítása.
A módszer túlterhelésével és felülbírálásával csökkentse az Ön által írt kódot.
Olvassa tovább
- Programozás
- Jáva
- Programozási nyelvek
- Programozás

Jerome a MakeUseOf munkatársa. A programozásról és a Linuxról szóló cikkekkel foglalkozik. Szintén kriptorajongó, és mindig figyelemmel kíséri a kriptoipart.
Iratkozzon fel hírlevelünkre
Csatlakozz hírlevelünkhöz, ahol technikai tippeket, értékeléseket, ingyenes e -könyveket és exkluzív ajánlatokat találsz!
Feliratkozáshoz kattintson ide