Аннотации — это современная и предпочтительная альтернатива маркерным интерфейсам в Java.
Маркерные интерфейсы выполняли свою роль в старых версиях Java, но аннотации дают несколько преимуществ:
public interface Serializable {}
public class MyClass implements Serializable {}
@Marker
public class MyClass {}
Java предоставляет несколько примеров аннотаций, заменяющих маркерные интерфейсы:
@Deprecated — отмечает код как устаревший@Override — указывает на переопределение метода@FunctionalInterface — отмечает интерфейсы с одним методом@SafeVarargs — подавляет предупреждения для varargsИспользуй аннотации когда:
Маркерные интерфейсы всё ещё имеют ограниченное применение:
При разработке на современной Java всегда выбирай аннотации вместо маркерных интерфейсов. Они дают более чистый дизайн, удобнее в поддержке и соответствуют актуальным лучшим практикам Java.
Аннотации могут включать атрибуты и параметры, тогда как маркерные интерфейсы служат только в качестве типовых маркеров без дополнительных метаданных.
Новый — ещё не проверен сообществом
Вы