模式设计--观察者模式

来源:互联网 发布:太瘦了知乎 编辑:程序博客网 时间:2024/06/06 06:44

    观察者典型的事例就是监控器模型,在界面上安装监控器,界面作为观察者,监控器作为被观察者,当界面的部件有事件发生时,界面通知各个监听器,做出相应的反应。再举一个具体的事例:QQ信息的处理,当QQ有信息时,桌面上的好几个组件都会有反应,QQ头像闪动,消息数字加1...

    这就是观察者模式,实现机制如下:


      定义有一个观察者父类接口,被观察者父类接口,子类实现父类接口,一个观察者父类关联多个被观察者父类,观察者子类用容器包装被观察者,实现消息的通知,被观察者者根据自身性质处理消息。

     代码实现如下

     观察者父类代码:

   

    被观察者父类代码:


观察者子类代码:


被观察者子类代码:


实现




0 0