如果我需要将异常传输到 UI,处理异常的更好方法是什么? 我需要使用什么:通过几种方法向 UI 抛出 Checked/Unchecked(其中哪个更好),以向用户显示适当的消息或从方法到方法返回错误代码到 UI 或者其他东西?
更新:
使用 Android 的 Handler 来处理所有已检查/未检查(也许仅在其中)的异常是个好主意吗?我不知道如何在它们出现的地方处理它们?
例如
...
catch(NUllPointerException){
UIExceptionHandler.sendEmptyMessage(...);
}
...
onHandleMessage(...){
//handle exception here - for example show toast
}
?
最佳答案
就像 Dan W 所说,您可以创建自己的异常并在 UI 层上捕获它。扩展 RunetimeException 允许您抛出异常,而无需在方法 header 中指定它们。
另一个需要考虑的重要事项是 UI 层上的 EDT。由于不可能将所有事件调度程序线程异常包装在 UI 层的单个位置中,因此您可以创建一个 UncaughtExceptionHandler 并从那里管理在应用程序中触发的所有 UncaughtException。
从那里您可以轻松记录并通知用户发生的错误,并根据引发但未捕获的异常类型显示不同的消息。这样,您就可以确保没有错误被忽视。
本次讨论讨论了处理程序实现的基础知识。 How can i catch Event Dispatch Thread (EDT) exceptions?
关于java - 将异常传输到 UI 的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9024910/