Как создать аннотацию в java

Аватар пользователя Иван Полежаев
Иван Полежаев
13 апреля 2023

В Java для создания аннотации нужно определить новый тип аннотации с помощью ключевого слова @interface

Вот пример создания аннотации:

import java.lang.annotation.*;

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface MyAnnotation {
    String value() default "";
    int number() default 0;
}

В этом примере мы создаем аннотацию MyAnnotation с помощью ключевого слова @interface. Аннотация имеет два элемента: value и number, которые могут быть использованы для задания значения аннотации.

Аннотация также имеет две мета-аннотации: @Retention и @Target.

  • Мета-аннотация @Retention указывает, когда аннотация будет доступна во время выполнения программы. Значение RetentionPolicy.RUNTIME означает, что аннотация будет доступна во время выполнения.
  • Мета-аннотация @Target указывает, к чему можно применять аннотацию. В этом примере аннотация может быть применена только к методам (ElementType.METHOD)

Вы можете использовать аннотацию, которую только что определили, на методе следующим образом:

public class MyClass {
    @MyAnnotation(value = "test", number = 5)
    public void myMethod() {
        // Код метода
    }
}

В этом примере мы применили аннотацию @MyAnnotation к методу myMethod с помощью параметров value и number

0 0
Основы Java за 14 дней
  • 62 урока в онлайн-тренажере
  • 4 живых вебинара и масскодинг
  • Помощь наставника на весь период обучения

Есть что добавить? Зарегистрируйтесь

или войдите в аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Курсы по программированию в Хекслете

Backend-разработка

Разработка серверной части сайтов и веб-приложений

Frontend-разработка

Разработка внешнего интерфейса сайтов и веб-приложений и верстка

Создание сайтов

Разработка сайтов и веб-приложений на JS, Python, Java, PHP и Ruby on Rails

Тестирование

Ручное тестирование и автоматизированное тестирование на JS, Python, Java и PHP

Аналитика данных

Сбор, анализ и интерпретация данных на Python

Интенсивные курсы

Интенсивное обучение для продолжающих

DevOps

Автоматизация настройки локального окружения и серверов, развертывания и деплоя

Веб-разработка

Разработка, верстка и деплой сайтов и веб-приложений, трудоустройство для разработчиков

Математика для программистов

Обучение разделам математики, которые будут полезны при изучении программирования

JavaScript

Разработка сайтов и веб-приложений и автоматизированное тестирование на JS

Python

Веб-разработка, автоматическое тестирование и аналитика данных на Python

Java

Веб-разработка и автоматическое тестирование на Java

PHP

Веб-разработка и автоматическое тестирование на PHP

Ruby

Разработка сайтов и веб-приложений на Ruby on Rails

Go

Курсы по веб-разработке на языке Go

HTML

Современная верстка с помощью HTML и CSS

SQL

Проектирование базы данных, выполнение SQL-запросов и изучение реляционных СУБД

Git

Система управления версиями Git, регулярные выражения и основы командой строки