Observer Pattern的一个实现
Java的API中有两组接口类是用来写观察者模式分别是java.util.Observable、java.util.Observer。
?
?
现实场景:有一名店(Shop),为了财物安全起见,除了在店内装了摄像头(Camera)来监控店内的总人数外,还聘请了一些门卫(Guard)守在店门口,对来访的客人进行实名登记,即客人进入时要记名,客人出店时也要记录其离去。
?
?
观察者(Camera)
?
?
观察者(Guard)
?
?
被观察者(Shop)
保安门卫一号汇报:BlogJava进入商店摄像头1号,监控到1个人进入商店,当前店内有1个人保安门卫一号汇报:JavaEye进入商店摄像头1号,监控到1个人进入商店,当前店内有2个人保安门卫一号汇报:BlogJava离开商店摄像头1号,监控到个人离开商店,当前店内有1个人门卫一号上厕所去了摄像头1号,监控到1个人进入商店,当前店内有2个人摄像头1号,监控到个人离开商店,当前店内有1个人摄像头1号,监控到1个人进入商店,当前店内有2个人保安门卫二号汇报:MS进入商店摄像头1号,监控到1个人进入商店,当前店内有3个人保安门卫二号汇报:CSDN离开商店摄像头1号,监控到个人离开商店,当前店内有2个人