【发布时间】:2021-11-22 15:34:37
【问题描述】:
在使用Java编程时,我遇到了以下问题。
使用构造函数时:以下代码可以正常工作。
public class Generics<T> {
private T data;
public static <T> Generics<T> of(T data) {
return new Generics<>(data);
}
public Generics(T data) {
this.data = data;
}
}
使用builder时:提示Object类型提供如下错误。
我使用了 Project Lombok 提供的构建器。
为什么上面代码中的通用生成器不起作用?
【问题讨论】:
-
我用过龙目岛。您可以在上面的照片中看到@Builder。
-
@paiwmsn 您是在问每种模式何时最适合使用,还是只是简单地问如何使用 lombok 实现构建器模式?
-
您正在使用
Generics.builder(),但没有向构建器提供类型参数,因此它是一个原始类型。 -
Generics<T>.builder()怎么样? -
如果
builder()是通用静态方法,则更有可能是Generics.<T>builder()。我不知道龙目岛到底生成了什么。