有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java非异常异常

这是一件事吗

我想抛出我自己的异常,只是为了让它更容易处理。 尽管如此,它们还是很平常的,因为这很可能发生,而不是例外情况。例如,如果用户从浏览器中选择了错误的文件类型。是的,我可以处理它,但是如果我抛出一个异常,尤其是子方法,那会容易得多,因为我需要以某种方式告诉父方法子方法失败了,所以要做一些不同的事情。我认为抛出异常更容易

在正常情况下抛出异常可以吗


共 (2) 个答案

  1. # 1 楼答案

    典型用例是:

    1. 向用户呈现一些数据
    2. 接受选择(或取消)
    3. 检查选择(例如,正确的文件类型)
    4. 如果正确,请返回所选内容
    5. 如果不正确,请提供一条错误消息(仍在此对话框的上下文中),并选择“重试”和“中止”
    6. 中止时,返回一个“空值”
    7. 重试时,返回到2

    实际上,不需要异常来处理不正确的条目,甚至取消(在2或6之后)。如果您的程序在访问文件系统或类似系统时遇到IOException,则可能会引发其他一些异常

    调用者应该承担的唯一负担是检查返回的“null值”(null或任何合适的值),以指示用户不想做某事的选择-通常应该提供此选项

  2. # 2 楼答案

    我不得不说,这个问题的答案在某种程度上是基于意见的,但普遍的共识似乎是,滥用例外进行常规流量控制是个坏主意

    这是一种well-documented反模式,将其视为反模式的主要原因是: