一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java 回調函數深入理解

Java 回調函數深入理解

2020-08-21 11:44Java教程網 Java教程

這篇文章主要介紹了 Java 回調函數深入理解的相關資料,需要的朋友可以參考下

 Java 回調函數

概要:

 所謂回調,就是客戶程序C調用服務程序S中的某個函數A,然后S又在某個時候反過來調用C中的某個函數B,對于C來說,這個B便叫做回調函數。例如Win32下的窗口過程函數就是一個典型的回調函數。一般說來,C不會自己調用B,C提供B的目的就是讓S來調用它,而且是C不得不提供。由于S并不知道C提供的B姓甚名誰,所以S會約定B的接口規范(函數原型),然后由C提前通過S的一個函數R告訴S自己將要使用B函數,這個過程稱為回調函數的注冊,R稱為注冊函數。Web Service以及Java的RMI都用到回調機制,可以訪問遠程服務器程序。

    下面舉個通俗的例子:

    某天,我打電話向你請教問題,當然是個難題,^_^,你一時想不出解決方法,我又不能拿著電話在那里傻等,于是我們約定:等你想出辦法后打手機通知我,這樣,我就掛掉電話辦其它事情去了。過了XX分鐘,我的手機響了,你興高采烈的說問題已經搞定,應該如此這般處理。故事到此結束。這個例子說明了“異步+回調”的編程模式。其中,你后來打手機告訴我結果便是一個“回調”過程;我的手機號碼必須在以前告訴你,這便是注冊回調函數;我的手機號碼應該有效并且手機能夠接收到你的呼叫,這是回調函數必須符合接口規范。

    通過上面個人感覺到回調更多的應用就是結合異步。比如:Ajax中js通過組件和服務器的異步通信。 

例:

    程序員A寫了一段程序(程序a),其中預留有回調函數接口,并封裝好了該程序。程序員B要讓a調用自己的程序b中的一個方法,于是,他通過a中的接口回調自己b中的方法。目的達到。在C/C++中,要用回調函數,被掉函數需要告訴調用者自己的指針地址,但在Java中沒有指針,怎么辦?我們可以通過接口(interface)來實現定義回調函數。

     假設我是程序員A,以下是我的程序a:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
public class Caller
{
  public MyCallInterface mc;
 
  public void setCallfuc(MyCallInterface mc)
  {
    this.mc= mc;
  }
 
  public void call(){
    this.mc.method();
  }
}  

       我還需要定義一個接口,以便程序員B根據我的定義編寫程序實現接口。

?
1
2
3
4
5
public interface MyCallInterface
{
  public void method();
 
}

     于是,程序員B只需要實現這個接口就能達到回調的目的了:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class B implements MyCallInterface
{
  public void method()
  {
    System.out.println("回調");
  }
 
  public static void main(String args[])
  {
    Caller call = new Caller();
    call.setCallfuc(new B());
    call.call();
  }
}

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

原文鏈接:http://blog.csdn.net/qq_35101189/article/details/58592904

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 黑人破中国女人处 | 性色AV乱码一区二区三区视频 | 91精品91久久久久久 | 国产欧美一区二区三区久久 | 日本在线观看视频网站 | 精品视频入口 | 狠狠色伊人亚洲综合网站色 | 亚洲午夜精品久久久久 | 四虎黄色影视库 | 国士李风起全文在线阅读 | 极品丝袜乱系列在线阅读 | 日日骑夜夜骑 | 猛h辣h高h文湿重口 门房秦大爷在线阅读 | sxx免费看观看美女 sss亚洲国产欧美一区二区 | 波多野结衣女教师在线观看 | 国内精品视频一区二区三区 | 免费观看a毛片一区二区不卡 | 国产一区二区在线观看美女 | 亚洲一二区视频 | 久久热在线视频精品店 | 国产欧美日韩在线不卡第一页 | 久久99精品国产自在自线 | 女人张开腿让男人做爽爽 | 青青草在线播放 | 国产精品一在线观看 | fc2成人免费共享视频 | 亚洲精品高清中文字幕完整版 | bl放荡受np双性 | 香蕉91 | 日本天堂视频 | 欧美日韩1区 | 精品推荐国产麻豆剧传媒 | 国产精品高清视亚洲一区二区 | 亚洲国产精品自在在线观看 | 欧美一级级a在线观看 | 亚洲AV久久无码精品九号软件 | 500福利第一导航 | 毛片视频网站在线观看 | 久久成人a毛片免费观看网站 | 女王脚奴vk| 99综合在线|