Naučte se Javu – rozhraní
Dnešní díl našeho seriálu o Javě se dozvíte o rozhraních – co jsou, k čemu se používají a jak je psát.
Co je to rozhraní
Rozhraní (interface
) je množina metod, která může být implementována třídou. Interface pouze popisuje metody, jejich vlastní implementace však neobsahuje.
V Javě na rozdíl od jiných programovacích jazyků (například C++) nemůže třída dědit od více tříd najednou (neexistuje vícenásobná dědičnost). Každá třída však může implementovat libovolný počet rozhraní, do jisté míry tedy rozhraní vícenásobnou dědičnost nahrazují. Implementace rozhraní není na hierarchii tříd nijak vázána a nevzniká z ní vztah dědičnosti, o kterém jsme mluvili v minulém díle.
Definice rozhraní
Definice rozhraní je vidět na následujícím příkladu. Hlavička se skládá z modifikátoru viditelnosti (public
), klíčového slova interface a jména rozhraní. Vlastní tělo definice pak obsahuje definici metod rozhraní.
|
Rozhraní může kromě definic metod obsahovat konstanty. Ty se pak chovají stejně, jako by se jednalo o konstanty třídy, která toto rozhraní implementovala.
Podobně jako lze pomocí dědičnosti rozšiřovat třídy, lze rozšiřovat i rozhraní. Pokud vytvoříte rozhraní, které dědí od jiného rozhraní, automaticky tak přebírá všechny jeho metody a konstanty. Dědičnost rozhraní se zapisuje klíčovým slovem extends
. Rozhraní také mohou dědit od více rozhraní najednou.
|
Implementace rozhraní
Implementovat rozhraní znamená implementovat všechny metody, které toto rozhraní definuje. Pokud třída implementuje nějaké rozhraní, je tím zaručeno, že obsahuje definici všech, které rozhraní definuje.
Implementace rozhraní se uvádí v záhlaví definice třídy klíčovým slovem implements
.
|
Třída může implementovat libovolný počet rozhraní, jak ukazuje následující příklad:
|
Použití rozhraní jako typů
V Javě lze definovat proměnnou typu reference na rozhraní, ve které může být uložena libovolná třída, která toto rozhraní implementuje. Jména rozhraní lze používat jako referenční datové typy stejným způsobem jako jména tříd.
|
Příklady rozhraní
Pro psaní jednoduchých aplikací nebudete zpravidla potřebovat definovat vlastní rozhraní, určitě se však neobejdete bez použití (implementace) předdefinovaných rozhraní Javy. Tady je seznam některých standardních často používaných rozhraní jazyka Java:
- java.awt.LayoutManager – toto rozhraní definuje metody, které jsou nezbytné k tomu, aby třída mohla uspořádat grafické objekty na ploše okna. Blíže se s ním setkáme v díle, který bude věnovaný knihovně AWT.
- java.io.DataInput, java.io.DataOutput – tato rozhraní definují metody požadované, pokud objekt chce komunikovat pomocí proudů pro předávání primitivních datových typů nebo znakových dat.
- java.lang.Runnable – toto rozhraní definuje metodu run, jejíž kód běží jako samostatné vlákno
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
ZONER Webmail jako první v Česku přináší BIMI s VMC
11. července 2024 -
Rychlost serveru: Klíč k lepšímu umístění ve vyhledávačích
7. června 2024 -
Doména .io v ohrožení: Co přinese předání Čagoských ostrovů?
10. října 2024 -
Netcat a Ncat
8. prosince 2022
Nejnovější
-
Výkonný a kompaktní: ASOME Max Studio s výjimečným poměrem cena/výkon
11. listopadu 2024 -
Šokující data od Microsoftu: Kyberútoky rostou o stovky procent!
8. listopadu 2024 -
Chcete jedinečnou doménu? Objevte koncovky FOOD, MEME a MUSIC!
7. listopadu 2024 -
OpenAI představilo novou funkci ChatGPT Search
6. listopadu 2024