这是一种常见的模式,我看到与异常关联的错误代码存储为静态最终整数。当创建要抛出的异常时,将使用这些代码之一以及错误消息来构造该异常。这导致该方法要抓住它,必须先查看代码,然后决定采取的措施。
替代方法似乎是-为每个异常错误情况声明一个类(尽管相关的异常会从通用基类中删除)
有中间立场吗?推荐的方法是什么?
这是一个很好的问题。我相信绝对有中间立场。
我认为错误代码对于显示质量检查错误以及让客户向客户支持部门报告并反馈给开发人员至关重要。
对于以编程方式处理错误,我个人不建议使用错误代码,我建议为每种错误类别都使用一个新的Class,但绝对不是针对每个错误。Java做得不错,使我们开始使用IOException,IllegalArgumentException,UnsupportedOperationException等异常。我经常在适当的时候抛出并捕获这些异常。
如果您有一个新类别的异常,您的代码应以编程方式响应,则您绝对应该为其创建一个新类,从而扩展适当的父类。例如,UserRegistrationException或ProductException。
我在看一本书《Spring在行动》第5版,但我认为这是一个错误。 这是这本书的GitHub。我已经到了第3章tacos-jdbc代码源码 submit my order时突然出现错误: OrderController: 和OrderForm:
我不知道该怎么办。 当我试图从解析器获取语法错误的数量时,它显示0。 编辑: 它返回null。
Blade 内置了 异常处理器,在开发者模式下它会将异常输出在前端页面,并在控制台打印堆栈信息,生产环境只打印在控制台。 有些时候不满足我们的需求,这时候就需要自定义异常处理了,比如针对某个自定义的异常进行特殊处理。 我们用一个例子来解释如何操作。 定义了一个名为 TipException 的运行时异常类,用于输出错误消息到前台。 按照上面对异常的处理情况这个异常的堆栈信息会被输出在控制台,生产环
任何方法都可以抛出不同类型的异常。这些异常可能是需要应用程序重新部署来解决的编程错误,或者是不需要重新部署但可以解决的暂时性错误。 Hangfire可以处理所有内部的(属于Hangfire本身)和相关的外部方法(任务,过滤器等)的异常,因此不会导致整个应用程序被关闭。所有内部异常都被记录(所以不要忘记 启用日志),最糟糕的情况是导致后台任务被暂停并延时重试 10 次。 当Hangfire遇到在执行
我们在编写程序的时候,经常需要对异常情况做处理。比如,当一个数试图除以 0 时,我们需要捕获这个异常情况并做处理。你可能会使用类似 if/else 的条件语句来对异常情况做判断,比如,判断除法的分母是否为零,如果为零,则打印错误信息。 这在某些简单的情况下是可以的,但是,在大多数时候,我们应该使用 Python 的异常处理机制。这主要有两方面的好处: 一方面,你可以选择忽略某些不重要的异常事件,或
异常处理可以使程序在流程上更加完善。 在 JavaScript 中可以使用 throw 抛出异常,使用 try ... catch 捕获错误。 1. throw throw 语句用来抛出一个用户自定义的异常。(MDN) throw 用于抛出一个异常,这种异常通常是程序出现了不符合预期的错误。 alert('出错前'); throw '发生了一个错误!'; alert('出错后'); 当出现