Я новичок в библиотеке lombok. Я использую шаблон @Builder для lombok, но он возвращает общий тип Object:
@Data
@Builder
public class Schedule<T>
{
private String frequency;
private T properties;
}
Из вызывающего класса:
Abc abc=new Abc();
//other
Schedule<Object> schedule=Schedule.builder().frequency( "ankit" ).properties( abc ).build();
Я хочу получить Schedule<Abc>, но получаю Schedule<Object>.
Спасибо и ответьте как можно скорее.
Вам необходимо передать Abc в качестве универсального параметра в builder():
Schedule<Abc> schedule = Schedule.<Abc>builder()
.frequency( "ankit" ) ^^^
.properties( abc )
.build();
Это не проблема ломбока. Вам нужно ввести приведение его к вашему классу Abc. Для приведения типов вам необходимо следовать синтаксису:
T<M> t=T.<M>builder()
.variablename("set value")
.build();
как ответил @Micha: https://stackoverflow.com/a/51873129/6097074