观察者模式是一个很有用的模式,因此java也自带了一个观察者模式供我们使用。但是这个java.util.Observeable并不那么好。
首先,Observerabe是一个类,你必须去继承。因为java是单继承的,那么这就给你的设计带来了很大的不变。
再者,它将关键的方法进行了保护。Observerabe中的setChanged()方法是private的,意味着你只有继承这一种途径。对于每个观察者实例必须都继承该类。
所以,还是自己写Subject接口和Observer接口吧。
观察者模式是一个很有用的模式,因此java也自带了一个观察者模式供我们使用。但是这个java.util.Observeable并不那么好。
首先,Observerabe是一个类,你必须去继承。因为java是单继承的,那么这就给你的设计带来了很大的不变。
再者,它将关键的方法进行了保护。Observerabe中的setChanged()方法是private的,意味着你只有继承这一种途径。对于每个观察者实例必须都继承该类。
所以,还是自己写Subject接口和Observer接口吧。