Annotation Type ConstructorProperties


@Documented
 @Target(value=CONSTRUCTOR)
 @Retention(value=RUNTIME)
public @interface ConstructorProperties

An annotation on a constructor that shows how the parameters of that constructor correspond to the constructed object's getter methods. For example:

public class Point {
    @ConstructorProperties({"x", "y"})
    public Point(int x, int y) {
        this.x = x;
        this.y = y;
    }

    public int getX() {
        return x;
    }

    public int getY() {
        return y;
    }

    private final int x, y;
}
The annotation shows that the first parameter of the constructor can be retrieved with the getX() method and the second with the getY() method. Since parameter names are not in general available at runtime, without the annotation there would be no way to know whether the parameters correspond to getX() and getY() or the other way around.
Since:
1.6

Required Elements

Modifier and Type Required Element and Description
String[] value

The getter names.

Elements

value

public abstract String[] value

The getter names.

Returns:
the getter names corresponding to the parameters in the annotated constructor.

© 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/javase/8/docs/api/java/beans/ConstructorProperties.html