- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试采用稍微更严格的方法来编码此类。与我通常的牛仔编码风格不同,我想首先列出方法、变量、注释……所有这些爵士乐。
现在这是异常的概念。
我是否应该思考“这个函数中可能出错的地方有哪些?”并为每个异常抛出一个异常(如果现有的描述性不够,则创建一个新的异常)?看来这是最精确的选择了。
如果思路是“这些事情可能会出错,我将为其他所有事情抛出一个一般异常。”
“可能不会出错,我不需要抛出异常,更糟糕的情况是,万一出了问题,我可以抛出运行时异常......”
我在这里担心的是错误处理的性能。理想情况下,我可以想象 Java 只是将这些异常转换为漂亮的小 if 语句或某种跳转语句。我想这只会花费一次左右的操作。
我还可以想象 Java 为了抽象而创建一个马戏团 20 个深度调用,也许它们的成本很高,我应该假装我再次用 C 进行编码?
我用一种愚蠢的方式写了这个问题,因为这样对我们俩来说都更有趣,但这是一个严肃的问题。我确信有一些平衡,也许是一个经验法则或十个。您如何看待异常(exception)情况?
编辑:我并不是建议我使用异常进行处理。我所说的是异常的数量和精确性(也许错误有多具体?)。
最佳答案
异常在运行时的成本更高,因此不应用作“正常”处理的一部分。
异常(exception)是指特殊情况。预期的故障不应产生异常。例如,用户提供无效输入(错误密码、无效邮政编码等)不应生成异常。
异常(exception)是错误和严重的不可恢复的系统故障。
请注意,JDBC 对异常的使用设计得很糟糕(根据我建议的原则)。
关于Java异常的正确使用和代价,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21004935/
我是一名优秀的程序员,十分优秀!