标签: java-8 optional final
我想扩展Optional以包含可选项为空的原因,但由于Optional是final,因此无法完成。
我不想使用例外,因为我的大多数代码都可以处理可选项为空的事实,而且例外情况与Streams不能很好地混合。只有一些地方关心附加信息 解决方案可能是复制计算值的方法,以便有一个版本返回Optional,另一个版本抛出异常。但重复的代码难以维护。
我的问题更多是为了深入了解为什么Optional课程最终成功。