java基礎學習總結——監聽當資料發生變化時要做的操作
阿新 • • 發佈:2019-01-31
1,我們先定義一個介面,可以讓多個監聽者實現
1 2 3 4 |
public interface IDataListen {
public void update(Object event,Object msg);
}
|
2,實現一監聽者
1 2 3 4 5 6 7 8 9 |
public class DataListen implements IDataListen{
@Override
public void update(Object event, Object arg) {
// TODO Auto-generated method stub System.out.println( "資料發生了變化" );
}
}
|
3,被監聽者
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
public class DataManager{
private List<IDataListen> listenList = new ArrayList<>();
public void notifyListen(Object event,Object msg){ for (IDataListen dataListen : listenList){
dataListen.update( null , null );
}
}
public void addListen(IDataListen dataListen){
listenList.add(dataListen);
}
public void updateData(Object msg){
this .notifyListen( null , msg);
}
public static void main(String[] args) {
DataManager dataManager = new DataManager();
IDataListen dataListen1 = new DataListen();
IDataListen dataListen2 = new DataListen();
dataManager.addListen(dataListen1);
dataManager.addListen(dataListen2);
dataManager.updateData( "aaa" );
}
}
|