В моем проекте я использую ломбок, чтобы не писать геттеры и сеттеры для класса. Кроме того, я использую lombok.Builder для создания объекта вместо написания new Obeject() и последующей установки всех значений.
Но когда у нас есть отношения наследования и когда мы хотим создать дочерний объект с помощью построителя ломбоков, я не получаю родительское поле.
Например:
@Data
@NoArgsConstructor
@AllArgsConstructor
@ToString
@EqualsAndHashCode
public class Parent{
private String nationality;
.
.
// more columns
}
И дочерний класс будет примерно таким:
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
public class Child extends Parent{
private String firstName;
private String lastName;
.
.
}
В моем тестовом классе, где мне нужно создать дочерний объект
public class Test{
public void testMethod(){
Child child = Child.builder()
.firstName("Rakesh")
.lastName("SS")
.nationality("some text")// I am not able to set nationality
.build();
}
}
Пожалуйста, дайте мне знать, есть ли способ справиться с этим сценарием на ломбоке.