觀察模式原生實(shí)現(xiàn):
1.主題接口:
package observer.natives;

public interface Subject
{
public void addObserver(Observer observer);
public void notifying();
}
2.主題實(shí)現(xiàn)類(lèi):
package observer.natives;

import java.util.ArrayList;
import java.util.List;

public class SubjectImpl implements Subject
{
private List<Observer> observerLst = new ArrayList<Observer>();
public void addObserver(Observer observer)
{
observerLst.add(observer);
}
public void notifying()
{
for(Observer observer : observerLst)
{
observer.updateData();
}
}
}
3.觀察者接口
package observer.natives;

public interface Observer
{
public void updateData();
}

4.觀察者實(shí)現(xiàn)類(lèi)
package observer.natives;

public class ObserverImpl implements Observer
{
private String name;
public ObserverImpl(String name)
{
this.name = name;
}

public void updateData()
{
System.out.println(name + " 收到通知");
}
}

5.測(cè)試類(lèi)
package observer.natives;

public class Test
{
public static void main(String[] args)
{
Subject subject = new SubjectImpl();
subject.addObserver(new ObserverImpl("小趙"));
subject.addObserver(new ObserverImpl("小錢(qián)"));
subject.addObserver(new ObserverImpl("小孫"));
subject.addObserver(new ObserverImpl("小李"));
subject.notifying();
}
}

1.主題接口:








2.主題實(shí)現(xiàn)類(lèi):























3.觀察者接口







4.觀察者實(shí)現(xiàn)類(lèi)

















5.測(cè)試類(lèi)

















