观察者模式,详解,附代码,自己写的和利用API的都有