Design Pattern:
Observer pattern is used when there is one-to-many relationship between objects such as if one object is modified, its depenedent objects are to be notified automatically. Observer pattern falls under behavioral pattern category. 模式:观察者模式,一个对象被修改,则会通知依赖他的对象。
故事场景: //NBA里詹姆斯风格是这样的-> 每次詹姆斯一拿到球,其他球员都帮忙挡拆。
骑士队的球员
public class Player {
String name;
public Player(Topic topic,String name) {
this.name = name;
topic.observers.add(this);
}
public void action(){
System.out.println(name+"挡拆");
}
}
Topic Player都订阅了一个topic
public class Topic {
List<Player> observers = new ArrayList<>();
public void handle(){
System.out.println("James拿球");
for (Player player: observers){
player.action();
}
}
}
实验的开始
public class Topic {
List<Player> observers = new ArrayList<>();
public void handle(){
System.out.println("Topic-James拿球");
for (Player player: observers){
player.action();
}
}
}
结果
