Как запустить код после конструктора в сборщике LombokJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как запустить код после конструктора в сборщике Lombok

Сообщение Anonymous »

У меня есть класс, который я хочу использовать Lombok.Builder, и мне нужна предварительная обработка некоторых параметров. Примерно так:

Код: Выделить всё

@Builder
public class Foo {
public String val1;
public int val2;
public List listValues;

public void init(){
// do some checks with the values.
}
}
обычно я бы просто вызвал init() для конструктора NoArg, но с сгенерированным построителем я не могу этого сделать. Есть ли способ вызвать этот init сгенерированным сборщиком? Например, build() сгенерирует такой код:

Код: Выделить всё

public Foo build() {
Foo foo = Foo(params....)
foo.init();
return foo;
}
Я знаю, что могу вручную закодировать конструктор всех аргументов, который будет вызываться через него Builder, и я могу вызвать init внутри там.

Но это неоптимальное решение, поскольку в мой класс, скорее всего, будут время от времени добавляться новые поля, что также будет означать изменение конструктора.>

Подробнее здесь: https://stackoverflow.com/questions/379 ... ok-builder
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»