Ломбок: Как определить специальный метод, который запускается при построении объекта?

У меня есть класс @Value @AllArgsConstructor, и я хочу, чтобы каждый его экземпляр имел идентификатор (первый объект имеет идентификатор 1, второй - 2 и т. д.). до сих пор, прежде чем я использовал ломбок, но конструктор, мое решение было: private static int idsCounter = 0;, а затем this.id = ++idsCounter; внутри конструктора.

Итак, как я должен реализовать это с помощью Lombok, который устраняет конструктор?


person Techno Freak    schedule 10.09.2019    source источник
comment
... укусить пулю и написать свой собственный конструктор?   -  person iluxa    schedule 11.09.2019
comment
а если у меня много полей? Будет неприятно писать конструктор самому (и использовать @Getter). Вы уверены, что нет возможности добавить какой-либо код (например, метод), который будет применяться к созданному объекту?   -  person Techno Freak    schedule 11.09.2019
comment
согласно stackoverflow.com/questions /41156010/ и github.com/rzwitserloot/lombok/issues/1207, это не дело   -  person iluxa    schedule 11.09.2019
comment
Раздражающий? Как вы думаете, сколько времени это займет? Больше 15 минут?   -  person VGR    schedule 11.09.2019
comment
Читабельность? да?   -  person Techno Freak    schedule 12.09.2019
comment
Вы можете обойти конструктор и написать что-то вроде: private int id = IDCounter.incrementAndGet();   -  person bubbles    schedule 15.09.2019