Interfészek a java
Bizonyos helyzetekben a szoftver fejlesztési folyamat, szükséges, ha különböző csoportok programozók kell „tárgyalni”, hogyan programjaikat kölcsönhatásba. Minden csoport képesnek kell lennie arra, hogy írjon a kódot nem számít, az ő másik zenekar. Interface a „szerződés”. Általunk használt interfészek az osztályban kommentárok a Java.
Ebben a leckében fogjuk vizsgálni azokat részletesen: mit csinálnak, mivel ők kijelentik, stb
Képzeljünk el egy jövőbeli, ahol a járművek által irányított számítógépek emberi beavatkozás nélkül. Az autógyártók levelet a szoftvert (Java, természetesen 🙂), amely szabályozza a gép - stop, menj, viszont, stb Más fejlesztők rendszerek adatokat fogadni GPS (Global Positioning System), és ezeket az adatokat használja, hogy ellenőrizzék a kocsit. Az autógyártók közzéteszi-interfész szabvány, amely leírja módszereket, hogy ellenőrizzék a gépet. Így a külső fejlesztők is tudják, hogy melyik módszer hivatkoznak, hogy az autó mozog, és az autógyártók lehet változtatni a belső végrehajtását a terméket bármikor. Egyik csoport a fejlesztők nem tudják, hogyan kell írni a programokat.
Java interfészek
Az aláírások módszerek nyilvánítják a zárójelek és pontosvesszővel végződjön. Ahhoz, hogy a felület, meg kell írni egy osztály, amely végrehajtja a felületet. Az osztályt, amely megvalósítja az interfészt kell leírni az összes metódusnak a felületen. Például:
A fenti példában - autógyártók írni szoftver a maga módján, de ugyanazt a felületet. A külső fejlesztők - felület az ügyfelek maguk is készíthetnek szoftver módszerekkel deklarált felületen.
API interfészeket
Példa mutatja, milyen interfészeket lehet használni, mint egy API (Application Programming Interface) vagy alkalmazás programozási felület. Az API használatával - a bevett gyakorlat a fejlesztés kereskedelmi szoftver. Jellemzően szoftver cégek eladni szoftver, amely tartalmaz egy sor olyan módszerek, amelyek más cégek szeretnék használni a termékeiket.
Interfészek és többszörös öröklés
Interfészek játszanak fontosabb szerepet nyelven programmirovniya Java. Java nem engedi többszörös öröklés, hanem felületek alternatívát. A Java, a osztály örökölhet csak az egyik osztály, de végre több interfészeket. Így objektumok több típusa van: írja saját osztályuk és típusú megvalósított interfészek. Amikor létrehoz egy jellemző osztály a típus neve lehet határozni a felület által végrehajtott osztályban. Más szóval, ha egy osztály megvalósítja az interfészt, a hivatkozás tárgya ennek az osztálynak lehet rendelni egy interfész változó - a változó, mint a típus, amely jelzi a megfelelő interfész neve.
A hozzáférési módosító nyilvános az, hogy a felületen lehet használni bármely osztálya olyan csomagot. Ha nem adja meg a felület, mint egy nyilvános, akkor csak részeként a csomagot. Egy interfész örökölhet más interfészeket osztályok más osztályoktól is örököl. Ellentétben osztályok, interfészek örökölheti számos más interfészek.
Interfész megvalósítása
Egy egyszerű interfész
Tekintsünk egy felület, amely meghatározza a módszert össze tárgyakat.
Ahhoz, hogy össze lehessen hasonlítani tárgyak, végre kell hajtanunk relatable felületet. Bármilyen osztály végre relatable felületet. ha van egy módja annak, hogy össze tárgyakat. Vonósokra, össze lehet hasonlítani a karakterek száma a könyvek - az oldalak számát a diákok - súly, stb Sík geometriai formák kiváló jellemzője az a terület háromdimenziós - kötetet. Mindezen osztályok végre isLargerThan () metódust. Ha tudja, hogy az osztály megvalósítja az interfészt relatable. akkor könnyen lehet összehasonlítani a tárgyak ebben az osztályban.
Végrehajtás relatable interfész
Írj egy osztály téglalap. Relatable megvalósítja az interfészt.
Mivel RectanglePlus osztály megvalósítja relatable. A méret minden két RectanglePlus típusú objektumok össze lehet hasonlítani.
isLargerThan metódus paraméterként relatable típusú objektumokat. Eljárás alkalmazása során a fenti példában a gipszben, mert a fordító nem érti, hogy a többi - az objektum típusát, és a hívás RectanglePlus other.getArea () metódus hibát eredményez anélkül, hogy a leadott.
A felület a típus
Amikor egy olyan felületen, akkor állapítsa meg egy új referencia típusú adatokat. Használhatja a felület nevét, mint az adatok típusát, valamint bármilyen más típusú. Ha nyilvánítja egy változó típusú interfészek, akkor lehet rendelni, hogy egy objektum minden osztályt, amely megvalósítja ezt a felületet.
Vegyük ezt a példát - egy eljárás, amelynek célja a nagyobb tárgy a két tárgy bármely osztályt, amely megvalósítja az interfészt relatable:
Hoz object1 a relatable típusát. mi teszi lehetővé, hogy kihívást isLargerThan módszer.
Ditto minden osztályt, amely megvalósítja a felhasználói felület relatable, akkor realizvat módszerek:
interfészek Nyomós
Tegyük fel, hogy írt doit interfész:
Tegyük fel később, akkor volna hozzá egy harmadik módszer:
Ha ez a változás, minden osztály, hogy hajtsák végre ezt a felületet fog törni, mert akkor megszűnik annak végrehajtására.
Próbálja meg elkerülni ezeket a változásokat, és úgy gondolja, a felület teljesen eredeti. De gyakran a gyakorlatban lehetetlen, és ki ez a helyzet lehet meghatározni egy új felület DoItPlus. amely kiterjeszti doit:
Most a felület, a felhasználók kezdi el használni az új felület, vagy marad a régi fájdalom nélkül.
Lásd még:
- Beágyazott és belső osztályok Java. 2. rész
- Beágyazott és belső osztályok Java. 1. rész
- Vonósok a Java
- húr funkciókat dolgozni húrok Java. 2. rész
- Alapjai reguláris kifejezések a Java. 3. rész
- húr funkciókat dolgozni húrok Java.
- Reguláris kifejezések a Java. 2. rész
- Hogy egy szép JavaFX alkalmazás a CSS