在Java 8中,接口或抽象类更好地定义返回CompletableFuture
而不是返回Future
的API?考虑it is ugly converting Future
to CompletableFuture
以及CompletableFuture
将为调用者提供直接使用函数样式的更大灵活性的事实,API返回Future
的原因是什么?
答案 0 :(得分:2)
我的2 cts:
所以你应该评估一下你将来会想要返回一个不同于CompletableFuture的东西的可能性(哈哈)并做出相应的决定。
答案 1 :(得分:1)
我想我会回到这里并提供一些关于我最终决定的更新:
对于我自己的代码/设计,我使用CompletableFuture
作为返回类型,因为
protected abstract
方法; CompletableFuture
提供的功能样式API是对未来开发人员使用功能样式的额外好处/提醒/鼓励话虽如此,我肯定会使用CompletableStage
接口作为返回类型,因为我设计了一个公共API,因为:
CompletableStage
有方法CompletableFuture<T> toCompletableFuture()
。