202 читали · 1 год назад
Java 373. Что такое маркерные интерфейсы? Для чего используются маркерные интерфейсы?
Маркерные интерфейсы (Marker Interface) - это интерфейсы, которые не содержат методов. Они используются для пометки классов в качестве имеющих какие-то особенности или свойства. Классы, которые реализуют маркерный интерфейс, получают информацию о том, что объект этого класса обладает конкретным свойством, и могут быть обработаны соответствующим образом. Это позволяет использовать условные операторы или динамическое связывание для принятия решения об обработке объекта. Маркерные интерфейсы не определяют...
1 год назад
Java 1170. Почему в некоторых интерфейсах вообще не определяют методов?
В Java есть такой концепт как "маркерный интерфейс" (marker interface). Это интерфейс, который не имеет методов. Его основное предназначение - помечать классы, чтобы это имело какой-то эффект на уровне компиляции или рантайма. Например, маркерный интерфейс java.io.Serializable не определяет методов, он просто указывает компилятору и JVM, что класс, который его реализует, может быть сериализован (т.е. его объекты могут быть преобразованы в поток байтов и обратно), и нужно выполнить некоторые действия в рантайме, чтобы это было возможно...