gpt4 book ai didi

java - 在 toString 方法中尝试 Catch block

转载 作者:行者123 更新时间:2023-11-30 06:24:05 25 4
gpt4 key购买 nike

在我的类中有 toString 标准方法覆盖 Object 方法。

在此方法中使用 try catch 是好的做法吗?

@Override
public String toString() {
try {
return
"number='" + product.getProductNumber() +
", locale=" + locale;
} catch (ProductException e) {
return super.toString();
}
}

最佳答案

不,这不是正常做法。异常应该用于处理异常情况,而不是常规代码流。

您的代码使用 try/catch 来检测可以在不引入异常的情况下处理的情况。大致相当于下面的方法:

@Override
public String toString() {
if (product.checkProductNumber()) {
return "number='" + product.getProductNumber() +
", locale=" + locale;
} else {
return super.toString();
}
}

虚构的 checkProductNumber 方法在 getProductNumber 调用不会抛出 ProductExceptionfalse 时返回 true 否则。创建像 checkProductNumber 这样的方法并使用它而不是捕获异常是一种更好的编码方法,在正常程序流程中捕获异常。

关于java - 在 toString 方法中尝试 Catch block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17486073/

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