- 1. 监听者模式(观察者模式)
- public class TestObserve{
- public static void main(String[] args){
- Person p = new Person();
- //向Person中注册监听者
- p.addListener(new A());
- p.addListener(new B());
- p.addListener(new C());
- p.setName("test");
- }
- }
- class Person{
- private String name;
- private Super[] listener = new Super[10];
- private int cnt = 0;
- public void setName(String name){
- //通知所有的监听者
- for(int i=0; i<cnt; i++){
- listener[i].print();
- }
- this.name = name;
- }
- public void addListener(Super a){
- listener[cnt++] = a;
- }
- public String getName(){
- return this.name;
- }
- }
- abstract class Super{
- public abstract void print();
- }
- class A extends Super{
- public void print(){
- System.out.println("--A.print()--");
- }
- }
- class B extends Super{
- public void print(){
- System.out.println("--B.print()--");
- }
- }
- class C extends Super{
- public void print(){
- System.out.println("--C.print()--");
- }
- }
- ********
- interface Super{
- public abstract void print();
- }
- class A implements Super{
- public void print(){
- System.out.println("--A.print()--");
- }
- }
- class B implements Super{
- public void print(){
- System.out.println("--B.print()--");
- }
- }
- class Base{}
- class C extends Base implements Super{
- public void print(){
- System.out.println("--C.print()--");
- }
- }
- ********
监听者模式
最新推荐文章于 2022-03-01 10:27:58 发布
本文通过一个具体的Java示例介绍了观察者模式(监听者模式)的基本原理及实现方式。该模式定义了对象间的一种一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并被自动更新。
1018

被折叠的 条评论
为什么被折叠?



