Java tutoriály

Java HOME Java Intro Java Začínáme Syntaxe Java Komentáře Java Proměnné Java Datové typy Java Java Type Casting Operátoři Java Java řetězce Java Math Java Booleans Java If...Einse Přepínač Java Java While Loop Java For Loop Java Break/Continue Pole Java

Java metody

Java metody Parametry metody Java Přetížení metody Java Rozsah Java Java rekurze

Třídy Java

Java OOP Java třídy/objekty Atributy třídy Java Metody třídy Java Java konstruktory Modifikátory Java Java Encapsulation Balíčky Java / API Dědičnost Java Polymorfismus Java Java vnitřní třídy Java abstrakce Rozhraní Java Java Enums Vstup uživatele Java Java Datum Java ArrayList Java LinkedList Java HashMap Java HashSet Java Iterator Třídy Java Wrapper Výjimky Java Java RegEx Java vlákna Java Lambda

Manipulace se soubory Java

Soubory Java Java Vytváření/zápis souborů Java Read Files Java Odstranění souborů

Java Jak na to

Přidejte dvě čísla

Reference Java

Klíčová slova Java Java String Methods Matematické metody Java

Příklady Java

Příklady Java Kompilátor Java Java cvičení Java kvíz Java certifikát


Klíčové slovo rozhraní Java

❮ Klíčová slova Java


Příklad

An interfaceje abstraktní „třída“, která se používá k seskupení souvisejících metod s „prázdnými“ těly:

Pro přístup k metodám rozhraní musí být rozhraní „implementováno“ (něco jako zděděno) jinou třídou s implements klíčovým slovem (místo extends). Tělo metody rozhraní poskytuje třída "implement":

// interface
interface Animal {
  public void animalSound(); // interface method (does not have a body)
  public void sleep(); // interface method (does not have a body)
}

// Pig "implements" the Animal interface
class Pig implements Animal {
  public void animalSound() {
    // The body of animalSound() is provided here
    System.out.println("The pig says: wee wee");
  }
  public void sleep() {
    // The body of sleep() is provided here
    System.out.println("Zzz");
  }
}

class MyMainClass {
  public static void main(String[] args) {
    Pig myPig = new Pig();  // Create a Pig object
    myPig.animalSound();
    myPig.sleep();
  }
}


Definice a použití

Klíčové interfaceslovo se používá k deklaraci speciálního typu třídy, která obsahuje pouze abstraktní metody.

Pro přístup k metodám rozhraní musí být rozhraní „implementováno“ (něco jako zděděno) jinou třídou s implements klíčovým slovem (místo extends). Tělo metody rozhraní poskytuje třída "implement".

Poznámky k rozhraním:

  • Nelze jej použít k vytváření objektů (ve výše uvedeném příkladu není možné vytvořit objekt „Zvíře“ v MyMainClass)
  • Metody rozhraní nemají tělo - tělo poskytuje třída "implement".
  • Při implementaci rozhraní musíte přepsat všechny jeho metody
  • Metody rozhraní jsou ve výchozím nastavení abstracta public
  • Atributy rozhraní jsou ve výchozím publicnastavení staticafinal
  • Rozhraní nemůže obsahovat konstruktor (protože jej nelze použít k vytváření objektů)

Proč a kdy používat rozhraní?

Chcete-li dosáhnout bezpečnosti - skryjte určité detaily a zobrazte pouze důležité detaily objektu (rozhraní).

Java nepodporuje "vícenásobnou dědičnost" (třída může dědit pouze z jedné nadtřídy). Lze toho však dosáhnout pomocí rozhraní, protože třída může implementovat více rozhraní. Poznámka: Chcete-li implementovat více rozhraní, oddělte je čárkou (viz příklad níže).


Více rozhraní

Chcete-li implementovat více rozhraní, oddělte je čárkou:

Příklad

interface FirstInterface {
  public void myMethod(); // interface method
}

interface SecondInterface {
  public void myOtherMethod(); // interface method
}

// DemoClass "implements" FirstInterface and SecondInterface
class DemoClass implements FirstInterface, SecondInterface {
  public void myMethod() {
    System.out.println("Some text..");
  }
  public void myOtherMethod() {
    System.out.println("Some other text...");
  }
}

class MyMainClass {
  public static void main(String[] args) {
    DemoClass myObj = new DemoClass();
    myObj.myMethod();
    myObj.myOtherMethod();
  }
}


Související stránky

Přečtěte si více o rozhraních v našem výukovém programu rozhraní Java .


❮ Klíčová slova Java