Junior — Middle
Можеш ли да дадеш примери за типове интерфейси, използвани в Java за определяне на договори между компоненти?
sobes.tech AI
Отговор от AI
В Java интерфейсите се използват за определяне на договори между компоненти, тоест описват набор от методи, които клас трябва да реализира. Примери за типове интерфейси:
-
Функционални интерфейси — съдържат един абстрактен метод, използват се за лямбда изрази и функционално програмиране. Например
Runnable,Callable,Comparator. -
Маркерни интерфейси — не съдържат методи, служат за маркиране на класове, например
Serializable,Cloneable. -
API интерфейси — описват поведението на компонентите, например
List,Map,Setв колекциите.
Пример за функционален интерфейс:
@FunctionalInterface
public interface Calculator {
int calculate(int a, int b);
}
// Използване
Calculator sum = (a, b) -> a + b;
int result = sum.calculate(5, 3); // 8
Интерфейсите позволяват създаването на гъвкави и разширяеми архитектури, осигурявайки слаба свързаност между компонентите.