对于一个观察者,也就是Observer来说,它唯一需要具备的功能就是在被观察的对象状态改变时,做出相应的操作,也就是Observer里唯一的方法update( ),而这个操作的具体内容往往是用户来实现的,也就说必须已接口的形式提供~对于被观察者来说,尽管其希望实现的功能可能各不相同,但是其添加、删除、和通知观察者的实现方法都是完全相同的(也就是addOberver、notifyObserver等),而唯一不同的地方在于调用时机的区别。因此Observable通过定义为Class来共享添加、删除、通知等的代码,而不同的子类只需要实现自己的业务逻辑和适时调用相关的父类方法即可。简而言之定义为类的目的,就是为了再不同的子类中共享代码。...