標籤:span bool 決定 實現 對象 建構函式 date() style back
這裡通過一個經典的例子來說明回調的具體實現機制,在這個機制裡,包含
兩個類和一個介面,介面的定義如下:
//相當於介面InApublic interface BoomWTC{ //獲得拉登的決定 public benLaDengDecide(); // 執行轟炸世貿 public void boom();}
類A的定義如下,它作為一個主類,實現了介面
//相當於class Apublic class At$911 implements BoomWTC{ private boolean decide; private TerroristAttack ta; //類B public At$911(){ //建構函式 Date now=new Date(); SimpleDateFormat myFmt1=new SimpleDateFormat("yy/MM/dd HH:mm"); this.dicede= myFmt.format(dt).equals("01/09/11 09:44"); this.ta=new TerroristAttack(); } //獲得拉登的決定 public boolean benLaDengDecide(){ return decide; } // 執行轟炸世貿 public void boom(){ ta.attack(new At$911);//class A調用class B的方法傳入自己的對象,相當於【you call me】 }}
類B的定義如下:
public class TerroristAttack{ public TerroristAttack(){ } public attack(BoomWTC bmw){ //調用類A中的方法 if(bmw.benLaDengDecide()){ /*class B在方法中回調class A的方法,相當於【i call you back】*/ } }}
從例子可以看出,類B是通過介面回調了類A的方法
android 回調的理解(結合介面)