Встречается на собеседованиях • сегодня
Чем заменили интерфейсы-маркеры
Начиная с Java 8, интерфейсы-маркеры стали менее актуальными благодаря default-методам. Вместо пустых интерфейсов можно использовать аннотации (`@FunctionalInterface`, `@Override` и др.) или функциональные интерфейсы с единственным абстрактным методом.
Пример замены маркера `Serializable` на более осмысленный интерфейс:
```java
interface Persistable {
default boolean isPersistable() {
return true;
}
}
class Entity implements Persistable {
// Класс автоматически получает поведение isPersistable()
}
```
Для функциональных сценариев лучше использовать `java.util.function` интерфейсы:
```java
@FunctionalInterface
interface Validator {
boolean validate(T t);
}
```
Аннотации дают больше гибкости, чем маркеры, так как могут нести метаданные.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы