1.应用场景
有一些数据,存在很多应用需要使用这些数据。那么在数据更新的时候,就需要实时更新这些应用对应的数据
2.实际代码
数据类接口
public interface DataInterface extends ApplicationInterface{
void setApplication(Application app);
void removeApplication(Application app);
void dataUpdate(int a, float b, double c);
}
数据类实现
public class Data{
private int a;
private float b;
private double c;
// ... get,set method
ArrayList<ApplicationInterface> list;
public Data(){
list = null;
}
public void setApplication(Application app){
list.add(app);
}
public void removeAppliction(Application app){
list.remove(app);
}
public void update(int a, float b, double c){
this.a = a;
this.b = b;
this.c = c;
updateApplication();
}
public void updateApplication(){
for(int i = 0, j = list.size(); i < j; i++){
((Application)list.get(i)).update(a,b,c);
}
}
}
应用类接口
public interface ApplicationInterface(){
void update(int a, float b, double c);
}
应用类实现
public class ApplicationA(){
private int a;
private float b;
private double c;
public void update(int a, float b, double c){
do something...
}
}
测试代码
public class test{
public static void main(String args[]){
DataInterface data = new Data();
ApplicationInterface app = new ApplicationA();
data.setApplication(app);
data.update(1, 0.2f, 0.3d);
}
}