Эта серия будет посвящена базовому пониманию Java. Всякий раз, когда я ловлю себя на том, что спрашиваю: “Как это работает?”. Я создам сообщение в блоге и размещу его здесь. Эта серия не будет в порядке, поэтому не стесняйтесь читать любой пост, который вы сочтете наиболее актуальным.
Всю информацию, которую я использовал для создания этого поста, можно найти здесь
Основы аннотации
- Аннотация, с которой большинство из нас, вероятно, знакомы, – это
@Переопределить
. В@ символ
указывает компилятору, что то, что следует за этим, является аннотацией. - Аннотация также может включать в себя такие элементы, как:
@Author( name="Bob" date=3/21/2021 )
- Если в аннотации нет элементов, то скобки можно опустить, аналогично
@Переопределить
.
Где можно использовать аннотации?
- Аннотации могут быть применены к объявлениям: объявлениям классов, полей, методов и других программных элементов. При использовании в объявлениях каждая аннотация по соглашению отображается в отдельной строке.
Аннотации типов
- Начиная с выпуска Java SE8, аннотации могут быть применены к любому месту, где используется тип. Эти новые и утвержденные аннотации называются
аннотации типа
.@Переопределение
и аннотации, которые мы будем создавать, являются примерами аннотаций типов. Аннотации типов были созданы для поддержки улучшенного анализа программ Java и улучшения более строгой проверки типов.
Создание собственной аннотации
- Скажем, в начале класса или метода у вас есть несколько комментариев, описывающих его, например:
//Author: Bob //Date: 3/17/2002 //Current version: 6 //Last modified: 4/12/2004 //By: Bob
- Чтобы добавить те же данные с аннотацией, вы должны сначала определить
тип аннотации
. Синтаксис для этого таков:
@interface CustomAnnotation { String author(); String date(); int currentRevision() default 1; String lastModified() default "N/A"; String lastModifiedBy() default "N/A"; }
- Определение типа аннотации выглядит аналогично определению интерфейса, где ключевое слово
interface
помещается после@
. Типы аннотаций на самом деле являются формой интерфейса. - Тело определения аннотации содержит
объявления элементов типа аннотации
, которые выглядят как методы, но они могут определять необязательные значения по умолчанию. - Как только вы определили тип аннотации, подобный приведенному выше, его можно использовать следующим образом:
@CustomAnnotation( author = "Bob", date = "3/17/2002", currentRevision = 6, lastModified = "4/12/2004", lastModifiedBy = "Bob" ) public void testingAnnotation() { }
- А теперь убирайтесь отсюда и создавайте свои собственные аннотации!!
- Спасибо, что нашли время в свой рабочий день, чтобы прочитать этот мой пост в блоге. Если у вас есть какие-либо вопросы или проблемы, пожалуйста, прокомментируйте ниже или свяжитесь со мной по адресу Твиттер .
Оригинал: “https://dev.to/theplebdev/java-quickie-annotations-c7j”