【发布时间】:2019-03-22 06:34:36
【问题描述】:
我有一个界面:
public interface Message<T extends Message<T>> {
}
我有一个实现这个方法的类
public class FulfilmentReleasedDomModel implements Message<FulfilmentReleasedDomModel> {}
我有这个方法:
private <T extends Message<T>> Mono<T> getDomainModel(ConsumerRecord<String, String> record) {}
当我尝试从此方法返回 Mono<FulfilmentReleaseDomModel> 类型的对象时,编译器会抛出错误并要求我将其转换为 (Mono<T>)。
我的问题是,既然我已经将T 绑定到extends Message,并且FulfilmentReleasedDomModel 实现了Message<FulfilmentReleasedDomModel>,为什么我需要将它转换为Mono<T>?
【问题讨论】:
标签: java type-conversion type-erasure