设计模式整理笔记3
import java.util.ArrayList;
import java.util.List;
import java.util.Observable;
import java.util.Observer;


public class Run {


public class UserSys{
public void login(){

}
}
public class TradeSys{
public  void startTrade(){

}
}
public  class PetSys{
public void reset(){

}
}

public class Facade{
public UserSys user;
public TradeSys trade;
public PetSys pet;
public void doLogin(){
user.login();
}
public void doTrade(){
trade.startTrade();
}
public void doReset(){
pet.reset();
}
}

public static void main(String[] args) {
Run run = new Run();

}


}
设计模式整理笔记3

andorid :在观察者AdapterView AdapterDataSetObserver onChanged 中调用requestLayout 会重新

onMeasure,onLayout,onDraw; onMeasure会执行absListView中会obtainView,而这个函数中就会调用到adapger的getView函数
import java.util.ArrayList;
import java.util.List;
import java.util.Observable;
import java.util.Observer;


public class Run {


public interface Observerable {
public void registerDataSetObserver(Observer server);


public void delete(Observer server);


public void notityObserver();
}


// 前
public class A implements Observerable {
public List<Observer> list = new ArrayList<Observer>();


public void handleRequese() {


}


public void registerDataSetObserver(Observer server) {
// TODO Auto-generated method stub
list.add(server);
}


public void delete(Observer server) {
// TODO Auto-generated method stub
list.remove(server);
}


public void notityObserver() {
// TODO Auto-generated method stub
for (int i = 0; i < list.size(); i++) {
list.get(i).update(null, "Message");
}
}
}


public class B implements Observer {


public void update(Observable arg0, Object arg1) {
// TODO Auto-generated method stub


}


}


public class AdapterDataSetObserver implements Observer {


public void update(Observable arg0, Object arg1) {
// TODO Auto-generated method stub


}


}


public class Adapter {
A a = new A();


public void registerDataSetObserver(AdapterDataSetObserver b) {
// TODO Auto-generated method stub
a.registerDataSetObserver(b);
}


}


public class ListView {
public void setAdapter(Adapter adater) {
AdapterDataSetObserver observer = new AdapterDataSetObserver();
adater.registerDataSetObserver(observer);
}
}


public static void main(String[] args) {
Run run = new Run();
ListView list = run.new ListView();
Adapter a = run.new Adapter();


list.setAdapter(a);
a.notityObserver();
}


}设计模式整理笔记3
设计模式整理笔记3



public class  Run {



//前
public class A{
public void handleRequese(){

}
}

public class B{
public void start(){

}
}

//后

public interface ITaget{
public void handleRequese();
}
public class A1 implements ITaget{
public void handleRequese(){

}
}

public class Adapter extends B implements ITaget{


public void handleRequese() {
// TODO Auto-generated method stub
super.start();
}

}

public static void main(String[] args) {
Run run = new Run();
ITaget taget =run.new Adapter();
taget.handleRequese();
}


}

相关文章:

  • 2021-06-15
  • 2021-09-23
  • 2021-07-14
  • 2021-10-11
猜你喜欢
  • 2021-09-11
  • 2021-06-26
  • 2022-02-16
  • 2021-08-22
  • 2021-05-28
  • 2021-10-19
相关资源
相似解决方案