观察者模式涉及的问题是一个类去通知很多的类进行修改等操作的问题。
简称一对多通知问题
通常我们将这一个类叫做Subject。将很多的类叫做Observer。
Subject是一个接口,实现了对Observer的注册,删除与更新。
Observer是一个接口,实现了数据的更新。
Observer通常使用ArrayList数据结构来实现对于Observer的管理。通过for循环对ArrayList中所有的Observer进行更新。
核心:Subject 接口与Observer接口
Java内置观察者,将Subject的更新的数据更换成了一个数据对象,更加灵活。
将Subject更换成了Observable,并且将接口换成了类。增加了setchange方法用于是否改变数据。
观察者因为其不可序列化,能够解决的问题过于少,不具有线程安全在Java9中已经被弃用。



