我对如何在我的 GUI 应用程序中处理未经检查的异常有点迷茫。
例如,我有一个功能,可以将用户新创建的公司保存在(嵌入式)数据库中。
保存新创建公司的函数抛出 3 个异常:
IllegalArgumentException
:如果公司或非空字段为空(手动检查并抛出)。
EntityExistException
: 如果公司(它的名字)已经存在。(也手动检查并抛出)。
PersistenceException
: 如果尝试保存时出现问题。(捕获并重新抛出)。
调用该saveCompany
方法的函数会捕获所有 3 个异常,然后记录它们并向用户显示发生错误的对话框。
我现在想知道我是否需要抓住它们?或者让他们跑到globalExceptionHandler
(我也可以看到他们的地方)可以吗?我也想知道我的反应应该是什么?
我应该告诉用户出现错误并让程序运行(因为程序的其他部分应该正常运行)还是应该告诉他然后结束程序(因为这是一个不应该出现的程序员错误) ?