Тип аннотации ConstructorParameters

@Documented
@Target(CONSTRUCTOR)
@Retention(RUNTIME)
public @interface ConstructorParameters

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

public class MemoryUsage {
    // standard JavaBean conventions with getters
    @ConstructorParameters({"init", "used", "committed", "max"})
    public MemoryUsage(long init, long used,
                       long committed, long max) {...}
    public long getInit() {...}
    public long getUsed() {...}
    public long getCommitted() {...}
    public long getMax() {...}
}

Аннотация показывает, что первый параметр конструктора может быть получен с помощью метода getInit(), второй — с помощью метода getUsed(), и так далее. Поскольку имена параметров, как правило, недоступны во время выполнения, без аннотации невозможно определить, какой параметр соответствует какому свойству.

Если конструктор аннотирован как @java.beans.ConstructorProperties, так и @javax.management.ConstructorParameters, JMX-интроспекция отдаст абсолютный приоритет последней.

С момента:
9

Обязательные элементы

Модификатор и тип Обязательный элемент Описание
String[] value

Имена методов получения свойств.

Элементы

value

String[] value

Имена методов получения свойств.

Возвращает:
имена методов получения свойств, соответствующие параметрам в аннотированном конструкторе.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.management/javax/management/ConstructorParameters.html

Spec-Zone .ru
спецификации, руководства, описания, API