РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
106 of 1163 menu

Значение по умолчанию

Значение по умолчанию в аннотациях Java задает значение элемента аннотации, которое используется, если при применении аннотации значение этого элемента не указано явно. Значение по умолчанию задается с помощью ключевого слова default после имени элемента аннотации. В качестве значения по умолчанию можно использовать константы, строки, числа, перечисления, классы и массивы. Значение по умолчанию должно быть совместимо с типом элемента аннотации.

Синтаксис

public @interface AnnotationName { type elementName() default value; }

Пример

Давайте создадим аннотацию с элементом, имеющим значение по умолчанию, и применим ее без указания этого элемента:

import java.lang.annotation.*; @Retention(RetentionPolicy.RUNTIME) @interface MyAnnotation { String name() default "defaultName"; int count() default 1; } @MyAnnotation public class Main { public static void main(String[] args) throws Exception { MyAnnotation ann = Main.class.getAnnotation(MyAnnotation.class); System.out.println(ann.name()); System.out.println(ann.count()); } }

Результат выполнения кода:

"defaultName" 1

Пример

Давайте применим ту же аннотацию, но явно укажем значение элемента name:

import java.lang.annotation.*; @Retention(RetentionPolicy.RUNTIME) @interface MyAnnotation { String name() default "defaultName"; int count() default 1; } @MyAnnotation(name = "customName") public class Main { public static void main(String[] args) throws Exception { MyAnnotation ann = Main.class.getAnnotation(MyAnnotation.class); System.out.println(ann.name()); System.out.println(ann.count()); } }

Результат выполнения кода:

"customName" 1

Пример

Давайте создадим аннотацию с элементом-массивом, имеющим значение по умолчанию:

import java.lang.annotation.*; @Retention(RetentionPolicy.RUNTIME) @interface MyAnnotation { String[] values() default {"a", "b", "c"}; } @MyAnnotation public class Main { public static void main(String[] args) throws Exception { MyAnnotation ann = Main.class.getAnnotation(MyAnnotation.class); for (String value : ann.values()) { System.out.println(value); } } }

Результат выполнения кода:

"a" "b" "c"

Смотрите также

  • аннотация Annotation,
    которая является основой для создания аннотаций
  • элемент element,
    который определяет параметр аннотации
  • аннотация Retention,
    которая задает политику хранения аннотации
  • аннотация Target,
    которая указывает, где можно применять аннотацию
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить