Interfejs w Java z Przykładem
⚡ Inteligentne podsumowanie
Interfejs w Java jest abstractyp t określający zachowanie, które klasa musi zaimplementować, zawierający stałe i wartości bezwzględnetracMetody t. Ten zasób wyjaśnia, czym jest interfejs, dlaczego jest wymagany, jak go zadeklarować i zaimplementować oraz czym interfejsy różnią się od klas i abs.tract klasy.

W czym jest interfejs Java?
An Interfejs w Java język programowania jest definiowany jako abstracTyp t używany do określenia zachowania klasy. A Java interfejs zawiera stałe statyczne i abstracMetody t. Klasa może implementować wiele interfejsów. W JavaInterfejsy są deklarowane za pomocą słowa kluczowego „interface”. Wszystkie metody w interfejsie są domyślnie publiczne i abs.tract.
Składnia deklarowania interfejsu
Aby użyć interfejsu w swojej klasie, dodaj słowo kluczowe „implements” po nazwie klasy, a następnie nazwę interfejsu.
interface { // methods }
Przykład implementacji interfejsu
Teraz zrozumiemy interfejsy w Java z przykładem:
class Dog implements Pet
interface RidableAnimal extends Animal, Vehicle
Kliknij w tym miejscu jeśli wideo nie jest dostępne.
Kliknij w tym miejscu jeśli film nie jest dostępny
Dlaczego wymagany jest interfejs?
Aby zrozumieć użycie interfejsu w Java lepiej, spójrzmy na Java Przykład interfejsu. Klasa „Odtwarzacz multimedialny” ma dwie podklasy: odtwarzacz CD i odtwarzacz DVD. Każda z nich ma własną, unikalną metodę implementacji interfejsu do odtwarzania muzyki.
Inna klasa, „napęd Combo”, dziedziczy zarówno CD, jak i DVD (patrz ilustracja poniżej). Którą metodę odtwarzania powinien odziedziczyć? Może to powodować poważne problemy projektowe, a co za tym idzie, Java nie pozwala na wielokrotność dziedzictwo.
Teraz rozważmy inny przykład psa.
Załóżmy, że masz wymaganie, w którym klasa „pies” dziedziczy klasy „zwierzę” i „zwierzę domowe” (patrz poniższy obrazek). Nie możesz jednak rozszerzyć dwóch klas w JavaCo więc byś zrobił? Rozwiązaniem jest interfejs.
W regulaminie interfejsu napisano:
- A Java interfejs jest w 100% abstracklasa t i ma tylko abstracmetody t.
- Klasa może implementować dowolną liczbę interfejsów.
Klasa Pies może rozszerzyć klasę „Zwierzę” i zaimplementować interfejs „Zwierzę domowe”.
Java Przykład interfejsu
Zrozumiemy poniższy program interfejsu w Java:
Krok 1) Skopiuj poniższy kod do edytora.
interface Pet { public void test(); } class Dog implements Pet { public void test() { System.out.println("Interface Method Implemented"); } public static void main(String args[]) { Pet p = new Dog(); p.test(); } }
Krok 2) Zapisz, skompiluj i uruchom kod. Obserwuj wynik działania interfejsu w Java program.
Różnica między klasą a interfejsem
| Klasa | Interfejs |
|---|---|
| W klasie można tworzyć wystąpienia zmiennych i obiekty. | W interfejsie nie można tworzyć instancji zmiennych ani obiektów. |
| Klasa może zawierać metody konkretne (z implementacją). | Interfejs nie może zawierać metod konkretnych (z implementacją). |
| Specyfikatory dostępu używane w klasach to private, protected i public. | W interfejsie używany jest tylko jeden specyfikator – public. |
Kiedy stosować Interface i AbstracKlasa t?
- Użyj mięśni brzuchatracKlasa t, gdy szablon musi zostać zdefiniowany dla grupy podklas.
- Użyj interfejsu, gdy rola musi zostać zdefiniowana dla innych klas, bez względu na drzewo dziedziczenia tych klas.
Musisz znać fakty na temat interfejsu
- A Java klasa może implementować wiele Java Interfejsy. Konieczne jest, aby klasa implementowała wszystkie metody zadeklarowane w interfejsach.
- Klasa powinna nadpisywać wszystkie abstracmetody zadeklarowane w interfejsie.
- Interfejs pozwala na wysłanie wiadomości do obiektu bez względu na to, do jakiej klasy on należy.
- Klasa musi zapewniać funkcjonalność metod zadeklarowanych w interfejsie.
- Wszystkie metody w interfejsie są domyślnie publiczne i abstract.
- Nie można utworzyć instancji interfejsu.
- Odwołanie do interfejsu może wskazywać na obiekty klas go implementujących.
- Interfejs może rozszerzać jeden lub wiele interfejsów. Klasa może rozszerzać tylko jedną klasę, ale implementować dowolną liczbę interfejsów.
- Interfejs nie może implementować innego interfejsu. W razie potrzeby musi rozszerzyć inny interfejs.
- Interfejs zadeklarowany wewnątrz innego interfejsu nazywany jest interfejsem zagnieżdżonym.
- W momencie deklaracji zmienna interfejsu musi zostać zainicjowana. W przeciwnym razie kompilator zgłosi błąd.
- Klasa nie może implementować dwóch interfejsów w Java które mają metody o tej samej nazwie, ale innym typie zwracanym.




