java - 我可以使用观察者模式进行错误处理吗?

标签 java observer-pattern

我可以使用观察者模式来处理错误吗?它的优点/缺点是什么?有人为此目的使用这种方法吗?

更新:

class MyErrorApi{
public static final int NETWORK_ERROR = 1;

public(MyErrorApi error){
...
}
}


interface ErrorListener{
void onErrorOcurred(MyErrorApi arror)
}


class MyBaseScreen implements ErrorListener{


void onErrorOcurred(MyErrorApi arror){
swirch(arror){
**showPopup();**
.....
}
}

最佳答案

您更有可能需要一个简单的回调,例如 ErrorHandler :

public interface ErrorHandler {

    /**
     * Handle the given error, possibly rethrowing it as a fatal exception
     */
    void handleError(Throwable t);

}

这是很常见的方法 - 您注册一个回调方法,以便在某处发生异常时得到通知。然而,这并不是严格意义上的 Observer - 目标对象的状态没有改变,您只会收到有关目标中发生的错误的通知(另一方面,这是一种事件).

通常您还可以拥有多个Observer。很少有超过一个错误处理程序,但不难想象。

关于java - 我可以使用观察者模式进行错误处理吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9580202/

相关文章:

java - Maven 3 JavaDoc 插件与 TestNG 组冲突

java - Java 是创建新的字符串还是指向原始字符串的指针?

javascript - Angular:错误 TS2322:类型 'Observable<{}>' 不可分配...使用 share() 运算符

knockout.js - Knockout 的映射破坏了可观察的数组

java - 传输参数: subscribing a method to an event

ruby-on-rails - 在 Rails 中运行另一个方法之前调用一个方法

java - 如何在httpurlconnection android中添加参数

Java逐字加密

java - 为什么JVM不支持强制类/类加载器卸载?

Swift 属性观察器 - didset 与 willset 使用的示例