Java8可选替换抛出多个异常的方法

时间:2014-12-12 01:30:38

标签: java function java-8

我们在执行过程中抛出了不同的异常代码。我想用Optional替换异常;但是可选只能告知用户该值不存在。我需要有关执行期间发生的各种问题的更多详细信息。我需要这些详细信息主要用于错误消息并获取正确的错误代码。

在这种情况下使用Optional的预期方式是什么?

1 个答案:

答案 0 :(得分:4)

Optional并非旨在替换异常,特别是如果存在不同类型的异常且需要调用者处理它们。

如果除非存在异常,否则您的方法永远不会返回null,那么将Optional引入之前为@NotNull的类型似乎就类型/空安全而言倒退了一步。

保持例外。