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
-
Nepodceňte UX na vašem webu: Proč na něm záleží?
10. dubna 2024 -
Co je to VRAM a jak ji navýšit bez drahého upgradu?
20. srpna 2024
Nejnovější
-
Jak rozšířit úložiště Macu za pětinovou cenu?
16. prosince 2024 -
Nové trendy v doménách pro osobní projekty – DIY, LIVING a LIFESTYLE
9. prosince 2024 -
Jak chránit webové stránky před Web/AI Scrapingem
27. listopadu 2024 -
Jaký monitor je nejlepší k novému Macu Mini?
25. listopadu 2024