Java Android中的异步异常抛出

Java Android中的异步异常抛出,java,android,exception,asynchronous,Java,Android,Exception,Asynchronous,我正在为网络协议设计一个API,在解析返回的JSON时,可能会遇到一些异常。在处理“常规”编程时,我会抛出异常,但我的API是异步的,并且基于回调。这意味着抛出异常是不可能的 我目前的解决方案是在解析时将捕获到的异常传递给回调,但我认为这不是在Java/Android中使用异常的正确方法 我还有其他选择吗?Dario Crivelli最近发布了一个聪明的解决方案,称为异步自上而下链模式 这篇文章可供查阅 这是摘要: 分层异常处理和静态异常检查是Java语言提供的最重要的功能之一;但是,它们的支持

我正在为网络协议设计一个API,在解析返回的JSON时,可能会遇到一些异常。在处理“常规”编程时,我会抛出异常,但我的API是异步的,并且基于回调。这意味着抛出异常是不可能的

我目前的解决方案是在解析时将捕获到的异常传递给回调,但我认为这不是在Java/Android中使用异常的正确方法


我还有其他选择吗?

Dario Crivelli最近发布了一个聪明的解决方案,称为异步自上而下链模式

这篇文章可供查阅

这是摘要:

分层异常处理和静态异常检查是Java语言提供的最重要的功能之一;但是,它们的支持仅限于过程代码,只能在函数调用的层次结构中使用。因此,当涉及到事件驱动编程或异步编程时,没有什么类似的东西可以帮助我们,在异步编程中,工作分散在许多相互独立的函数中。这在某些体系结构中尤其令人沮丧,其中逻辑设计是严格分层的,控制流实际上是顺序的,但涉及异步API调用。 本条涉及后一种情况;我们展示了如何通过编写遵循特定模式并依赖于适当支持库的代码,实现分层异常处理和静态异常检查的好处