Strona główna › Pytania INF.04 › Pytanie 529
INF.04 · pytanie #529
Jakie jest poprawne określenie interfejsu (szablonu klasy) w języku Java? <br><br> <table><tr><td>interface IMyInterface { private: int a; IMyInterface() { a = 0; } void mth1(); } Definicja 1</td><td>interface IMyInterface { private: int a; void mth1(); int mth2() { return a; } } Definicja 2</td></tr><tr><td>interface IMyInterface { void mth1(); int mth2() { return 0; } } Definicja 3</td><td>interface IMyInterface { void mth1(); int mth2(); } Definicja 4</td></tr></table>
- ADefinicja 2
- BDefinicja 4
- CDefinicja 3
- DDefinicja 1
Poprawna odpowiedź: B. Definicja 4
Kliknij odpowiedź, którą uważasz za poprawną.
Wyjaśnienie
W języku Java interfejs określa zbiór abstrakcyjnych metod, które klasa implementująca musi zaimplementować. Poprawna definicja interfejsu nie zawiera zmiennych instancji ani konstruktorów, co jest błędem w pierwszej definicji. Interfejsy służą do deklarowania metod, które są automatycznie publiczne i abstrakcyjne. W czwartej definicji, interfejs IMyInterface zawiera dwie metody mth1 i mth2 bez implementacji, co jest zgodne z zasadami Javy. Metody w interfejsie nie mają ciał, co wskazuje, że są przeznaczone do implementacji w klasie, która zadeklaruje się jako implementująca ten interfejs. Interfejsy są kluczowe dla polimorfizmu w Javie, pozwalając na tworzenie kodu, który może pracować z obiektami różnych klas w jednolity sposób, o ile klasy te implementują wspólny interfejs. Zastosowanie interfejsów zwiększa spójność i elastyczność kodu, umożliwiając łatwe dodawanie nowych funkcjonalności bez ingerencji w istniejącą strukturę kodu. Interfejsy są także wykorzystywane do tworzenia klasycznych wzorców projektowych jak Adapter, Strategia czy Obserwator, co jest dobrą praktyką w programowaniu obiektowym.
🤖 Wyjaśnienie generowane przez AI – weryfikuj w oficjalnych źródłach.