Назад к вопросам
Т-Банк
Senior
6
Что такое маркерный интерфейс? Зачем нужен?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Маркерный интерфейс — это интерфейс без методов, который служит для маркировки или идентификации класса как обладающего определённым свойством.
Пример в Java — интерфейс Serializable. Класс, реализующий этот интерфейс, сигнализирует JVM и другим инструментам, что его объекты можно сериализовать.
Зачем нужен маркерный интерфейс:
- Позволяет использовать instanceof для проверки принадлежности объекта к определённой категории.
- Используется в API и фреймворках для включения или отключения определённого поведения без добавления методов.
- Обеспечивает типовую безопасность и ясность кода.
Пример:
public interface MyMarker {}
public class MyClass implements MyMarker {
// класс ничего не обязан реализовывать
}
// где-то в коде
if (obj instanceof MyMarker) {
// выполнить особую логику
}
Таким образом, маркерный интерфейс — это простой способ пометить класс для последующей обработки.