Samouczki Java

Jawa DOM Wprowadzenie do Javy Rozpocznij Java Składnia Javy Komentarze Java Zmienne Javy Typy danych Java Rzutowanie typu Java Operatory Java Ciągi Java Matematyka Java Java logiczne Java, jeśli...inne Przełącznik Java Java podczas pętli Java dla pętli Przerwa/Kontynuacja w Javie Tablice Java

Metody Java

Metody Java Parametry metody Java Przeciążanie metody Java Zakres Java Rekurencja Java

Klasy Java

Java OOP Klasy/obiekty Java Atrybuty klas Java Metody klas Java Konstruktory Javy Modyfikatory Java Enkapsulacja Javy Pakiety Java / API Dziedziczenie Javy Polimorfizm Javy Klasy wewnętrzne Java Abstrakcja Java Interfejs Java Wyliczenia Java Wejście użytkownika Java Data Java Lista tablic Java Połączona lista Java Java HashMap Zestaw skrótów Java Iterator Javy Klasy opakowujące Java Wyjątki Java Java RegEx Wątki Java Jawa Lambda

Obsługa plików Java

Pliki Java Tworzenie/zapis plików Java Odczytywanie plików Java Usuń pliki Java

Jak to zrobić

Dodaj dwie liczby

Odniesienie do Javy

Słowa kluczowe Java Metody ciągów Java Metody matematyczne w języku Java

Przykłady Javy

Przykłady Javy Kompilator Javy Ćwiczenia Java Quiz Java Certyfikat Java


Java implementuje słowo kluczowe

❮ Słowa kluczowe Java


Przykład

An interfaceto abstrakcyjna „klasa” używana do grupowania powiązanych metod z „pustymi” treściami:

Aby uzyskać dostęp do metod interfejsu, interfejs musi być „zaimplementowany” (coś w rodzaju dziedziczenia) przez inną klasę ze implements słowem kluczowym (zamiast extends). Treść metody interfejsu jest dostarczana przez klasę „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();
  }
}


Definicja i użycie

Słowo implementskluczowe służy do implementacji interface.

Słowo interfacekluczowe służy do deklarowania specjalnego typu klasy, która zawiera tylko metody abstrakcyjne.

Aby uzyskać dostęp do metod interfejsu, interfejs musi być „zaimplementowany” (coś w rodzaju dziedziczenia) przez inną klasę ze implements słowem kluczowym (zamiast extends). Treść metody interfejsu jest dostarczana przez klasę „implement”.

Uwagi dotyczące interfejsów:

  • Nie można go używać do tworzenia obiektów (w powyższym przykładzie nie jest możliwe tworzenie obiektu "Zwierzę" w MyMainClass)
  • Metody interfejsu nie posiadają treści - treść jest dostarczana przez klasę "implement"
  • Podczas implementacji interfejsu musisz nadpisać wszystkie jego metody
  • Metody interfejsu są domyślnie abstracti public
  • Atrybuty interfejsu to domyślnie public, staticafinal
  • Interfejs nie może zawierać konstruktora (ponieważ nie można go używać do tworzenia obiektów)

Dlaczego i kiedy używać interfejsów?

Aby osiągnąć bezpieczeństwo - ukryj pewne szczegóły i pokaż tylko ważne szczegóły obiektu (interfejsu).

Java nie obsługuje „wielokrotnego dziedziczenia” (klasa może dziedziczyć tylko z jednej nadklasy). Można to jednak osiągnąć za pomocą interfejsów, ponieważ klasa może implementować wiele interfejsów. Uwaga: Aby zaimplementować wiele interfejsów, oddziel je przecinkami (patrz przykład poniżej).


Wiele interfejsów

Aby zaimplementować wiele interfejsów, oddziel je przecinkami:

Przykład

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();
  }
}


Powiązane strony

Przeczytaj więcej o interfejsach w naszym samouczku dotyczącym interfejsu Java .


❮ Słowa kluczowe Java