О @ConstructorProperties
Документация говорит: "Аннотации к конструктору, показывающие, как параметры этого конструктора соответствуют методам построения объекта объекта". И это дает пример, который неоднозначен, потому что имена переменных идентичны параметрам.
Я действительно не понимаю, почему @ConstructorProperties({"x", "y"})
относится к геттерам getX()
и getY()
. Случай x и y не согласуется с аннотацией.
Итак, чтобы уточнить, что должно быть аннотацией для конструктора в этом коде:
public class Point {
public Point(int a, int b) {
this.c = a;
this.d = b;
}
public int getCc() {
return c;
}
public int getDd() {
return d;
}
private final int c, d;
}
(Я отредактировал код, потому что из ответа я понимаю, что аннотация предполагает, что код будет следовать за общим случаем для геттеров, например cc
getter должен быть getCc()
. Но я намеренно, для устранения неоднозначности, разницу между именем получателя и фактической переменной)
Второй вопрос...
@ConstructorProperties(value="text")
Что означает эта аннотация, для JButton (текст строки)?
Кажется, он предназначен для использования инструментами, но просто хочет понять.