gpt4 book ai didi

java - 抛出异常来控制流程 - 代码味道?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:38:17 25 4
gpt4 key购买 nike

<分区>

考虑这段代码(特别是 Java):

public int doSomething()
{
doA();

try {
doB();
} catch (MyException e) {
return ERROR;
}

doC();
return SUCCESS;
}

其中 doB() 定义为:

private void doB() throws MyException

基本上,MyException 仅在 doB() 满足某些条件(不是灾难性的,但确实需要以某种方式引发此条件)的情况下存在,以便 doSomething() 会知道错误退出。

您认为使用异常(在本例中用于控制流程)是否可以接受?或者这是一种代码味道?如果是这样,您将如何重构它?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com