gpt4 book ai didi

Java异常的正确使用和代价

转载 作者:行者123 更新时间:2023-11-30 04:04:51 28 4
gpt4 key购买 nike

我正在尝试采用稍微更严格的方法来编码此类。与我通常的牛仔编码风格不同,我想首先列出方法、变量、注释……所有这些爵士乐。

现在这是异常的概念。

我是否应该思考“这个函数中可能出错的地方有哪些?”并为每个异常抛出一个异常(如果现有的描述性不够,则创建一个新的异常)?看来这是最精确的选择了。

如果思路是“这些事情可能会出错,我将为其他所有事情抛出一个一般异常。”

“可能不会出错,我不需要抛出异常,更糟糕的情况是,万一出了问题,我可以抛出运行时异常......”

我在这里担心的是错误处理的性能。理想情况下,我可以想象 Java 只是将这些异常转换为漂亮的小 if 语句或某种跳转语句。我想这只会花费一次左右的操作。

我还可以想象 Java 为了抽象而创建一个马戏团 20 个深度调用,也许它们的成本很高,我应该假装我再次用 C 进行编码?

我用一种愚蠢的方式写了这个问题,因为这样对我们俩来说都更有趣,但这是一个严肃的问题。我确信有一些平衡,也许是一个经验法则或十个。您如何看待异常(exception)情况?

编辑:我并不是建议我使用异常进行处理。我所说的是异常的数量和精确性(也许错误有多具体?)。

最佳答案

异常在运行时的成本更高,因此不应用作“正常”处理的一部分。

异常(exception)是指特殊情况。预期的故障不应产生异常。例如,用户提供无效输入(错误密码、无效邮政编码等)不应生成异常。

异常(exception)是错误和严重的不可恢复的系统故障。

请注意,JDBC 对异常的使用设计得很糟糕(根据我建议的原则)。

关于Java异常的正确使用和代价,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21004935/

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