废话不多说,直接上代码
//观察者模式
public class Subject{
List<Observer> list = new ArrayList<>(); //存放订阅者
private String message = "订阅消息通知";
public void addObserver(Observer observer){
list.add(observer);
}
public void deleteObserver(Observer observer){
int idx = list.indexOf(observer);
if(idx!=-1){
list.remove(observer);
}
}
public void notifyObserver(){
int size = list.size();
for(int i=0;i<size;i++>){
Observer obj = list.get(i);
obj.update(message);
}
}
}
public class Observer{
public void Update(String message){
System.out.println(message);
}
}