回调机制理解
1.?回調機制
回調機制是一種常見的設計模型,他把工作流內的某個功能,按照約定的接口暴露給外部使用者,為外部使用者提供數據,或要求外部使用者提供數據。
2.java回調機制:
軟件模塊之間總是存在著一定的接口,從調用方式上,可以把他們分為三類:同步調用、回調和異步調用。
?========================================================
同步調用:一種阻塞式調用,調用方要等待對方執行完畢才返回,它是一種單向調用;
回??????調:一種雙向調用模式,也就是說,被調用方在接口被調用時也會調用對方的接口;
異步調用:一種類似消息或事件的機制,不過它的調用方向剛好相反,接口的服務在收到某種訊息或發生某種事件時,會主動通知客戶方(即調用客戶方的接口)。
========================================================
回調和異步調用的關系非常緊密:使用回調來實現異步消息的注冊,通過異步調用來實現消息的通知。
3.java示例
接口:
public interface eventInterface
{
??? public void execute();
}
接口實現類:
public class eventimp implements eventInterface
{
??? public void execute()
??? {
?????? System.out.println("implements test");
??? }
}
回調類:
public class callback
{
??? eventInterface ei;
??? public void setCallBack(eventInterface e)
??? {
?????? this.ei=e;
?????? dosth();
??? }
??? public void dosth()
??? {
?????? ei.execute();
??? }
}
測試類:
public class Test
{
??? public static void main(String []args)
??? {
?????? callback cb=new callback();
??? /* 注釋部分采用匿名類實現接口eventInterface,運行時以自身傳入參數?
??? ?* cb.setCallBack(new eventInterface()
??? ?* {
??? ?* ??? public void execute(){System.out.println("callback test");}
??? ?* });*/
?????? cb.setCallBack(new eventimp());
??? }
}
總結:從示例中可以看出,通過回調機制,回調類可以調用回調類中所定義的接口的實現類中的方法。
轉載于:https://www.cnblogs.com/SSatyr/archive/2011/11/07/2239191.html
總結
- 上一篇: 变长结构体的临时笔记
- 下一篇: 上班无聊