Junior — Middle
Czy możesz podać przykłady typów interfejsów używanych w Java do definiowania kontraktów między komponentami?
sobes.tech AI
Odpowiedź od AI
W Javie interfejsy służą do definiowania kontraktów między komponentami, czyli opisują zestaw metod, które klasa musi zaimplementować. Przykłady typów interfejsów:
-
Interfejsy funkcyjne — zawierają jedną metodę abstrakcyjną, używane do wyrażeń lambda i programowania funkcyjnego. Na przykład
Runnable,Callable,Comparator. -
Interfejsy markerowe — nie zawierają metod, służą do oznaczania klas, na przykład
Serializable,Cloneable. -
Interfejsy API — opisują zachowanie komponentów, na przykład
List,Map,Setw kolekcjach.
Przykład interfejsu funkcyjnego:
@FunctionalInterface
public interface Calculator {
int calculate(int a, int b);
}
// Użycie
Calculator sum = (a, b) -> a + b;
int result = sum.calculate(5, 3); // 8
Interfejsy pozwalają tworzyć elastyczne i rozbudowywalne architektury, zapewniając słabe powiązanie między komponentami.