Back to questions
Junior — Middle
89
Объясните концепцию Marker Interface и как она используется в программировании.
Answer from AI
sobes.tech AI
Marker Interface — это интерфейс без методов и полей, который служит для маркировки или обозначения класса определённым свойством или поведением. В программировании он используется для передачи метаданных о классе на этапе компиляции или выполнения.
Например, в Java интерфейс Serializable является маркерным: он не содержит методов, но его реализация говорит JVM, что объекты класса можно сериализовать.
Пример:
public interface Serializable {
// Нет методов
}
public class User implements Serializable {
private String name;
private int age;
// геттеры, сеттеры и т.д.
}
Использование Marker Interface позволяет фреймворкам или библиотекам проверять наличие интерфейса через instanceof и выполнять специальные действия (например, сериализацию, клонирование, безопасность).