Java回調實現(xiàn)

Java回調實現(xiàn)

    1. 什么是回調
    1. 回調核心思想
    1. 案例代碼實現(xiàn)
    1. 后序

一凿可、什么是回調

開發(fā)過程當中存在某種特殊的業(yè)務需求,例如:


回調生活實例.PNG

描述:

  1. 老板給員工下達了工作任務之后百揭,就去做其他事情了。(此時此 刻缤底,老板不知道需要多長時間完成侵歇,不會一直等著,而是做自己其他事情)
  2. 員工接收到任務之后晤硕,按照要求完成任務
  3. 當員工任務完成的時候,主動的回饋給老板工作情況庇忌。
  4. 當員工回饋工作情況的時候窗骑,此時此刻老板還在做另外的事情

二、回調的核心思想

核心思想圖解:

回調的核心思想.PNG

描述:

  1. Boss類 下達任務的方法 調用 Employee類的 完成任務方法

  2. 當Employee類的 完成任務方法執(zhí)行完畢之后漆枚,會主動的調用 老板 Boss類的 callBack() 方法

三、案例代碼實現(xiàn)

01. 回調的接口 CallBack

/**
 * 定義回調的接口,只需要定義一個報告反饋的方法即可
 */
public interface CallBack {

    // 定義一個報告 反饋的方法
    public void baoGao(int num);

}

02. 老板類 Boss

/***
 * 定義一個老板Boss類,需要去實現(xiàn)回調的接口 CallBack
 */
public class Boss implements CallBack {

    // 定義下達任務的方法.需要在下達任務的當中調用 員工 完成任務的方法
    public void xiaDaRenWu(Employee e) {
        // 當下達任務的時候給出提示.等待著某位員工去完成任務
        System.out.println("Boss下達任務了,等待員工去完成...");
        // 員工去完成任務
        // 由于Boss實現(xiàn)了接口,可以將Boss的對象 this作為參數(shù)傳遞
        e.wanChengRenWu(this);
    }

    // 在報告的方法當中.需要去調用 員工信息
    @Override
    public void baoGao(int num) {
        System.out.println("員工報告回饋信息: " + num);
    }

}

03. 員工抽象類 Employee

/**
 * 員工類:由于不知道每個員工的完成方式,將員工定義為抽象
 */
public abstract class Employee {

    // 員工當中完成任務的操作
    public abstract void wanChengRenWu(CallBack callBack);
}

04. 具體員工類 KoBe

/**
 * 定義具體的員工類KoBe.完成員工任務的操作
 */
public class KoBe extends Employee {

    @Override
    public void wanChengRenWu(CallBack callBack) {
        // 模擬完成工作的情況抵知。需要消耗一定的時間
        try {
            Thread.sleep(4000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        // 回調操作,反饋給領導情況
        callBack.baoGao(666);
    }

}

05. 測試類 Test

/***
 * 定義測試類完成 測試.創(chuàng)建老板Boss的對象以及 員工對象
 */
public class Test {

    public static void main(String[] args) {

        // 老板的對象
        Boss b = new Boss();
        // 具體員工的對象
        KoBe k = new KoBe();
        // 老板下達任務
        b.xiaDaRenWu(k);

    }

}

最終運行效果(“員工報告反饋信息”等4秒后 才會出現(xiàn))

Boss下達任務了,等待員工去完成...
員工報告回饋信息: 666

四墙基、 后序

這個例子是一個典型的體現(xiàn)接口作用的例子,有些朋友可能不太明白接口的好處.

當各位朋友不太明白接口好處的朋友可以重點看一下這個例子刷喜,多多理解残制。

總結起來,回調的核心就是<font color="red"> 回調方將本身即this傳遞給調用方.</font>這樣調用方就可以在調用完畢之后告訴回調方它想要知道的信息掖疮。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末初茶,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子浊闪,更是在濱河造成了極大的恐慌恼布,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,265評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件搁宾,死亡現(xiàn)場離奇詭異折汞,居然都是意外死亡,警方通過查閱死者的電腦和手機盖腿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,078評論 2 385
  • 文/潘曉璐 我一進店門爽待,熙熙樓的掌柜王于貴愁眉苦臉地迎上來损同,“玉大人,你說我怎么就攤上這事鸟款「嗳迹” “怎么了?”我有些...
    開封第一講書人閱讀 156,852評論 0 347
  • 文/不壞的土叔 我叫張陵何什,是天一觀的道長组哩。 經(jīng)常有香客問我,道長富俄,這世上最難降的妖魔是什么禁炒? 我笑而不...
    開封第一講書人閱讀 56,408評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮霍比,結果婚禮上幕袱,老公的妹妹穿的比我還像新娘。我一直安慰自己悠瞬,他們只是感情好们豌,可當我...
    茶點故事閱讀 65,445評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著浅妆,像睡著了一般望迎。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上凌外,一...
    開封第一講書人閱讀 49,772評論 1 290
  • 那天辩尊,我揣著相機與錄音,去河邊找鬼康辑。 笑死摄欲,一個胖子當著我的面吹牛,可吹牛的內容都是我干的疮薇。 我是一名探鬼主播胸墙,決...
    沈念sama閱讀 38,921評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼按咒!你這毒婦竟也來了迟隅?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,688評論 0 266
  • 序言:老撾萬榮一對情侶失蹤励七,失蹤者是張志新(化名)和其女友劉穎智袭,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體掠抬,經(jīng)...
    沈念sama閱讀 44,130評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡补履,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,467評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了剿另。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片箫锤。...
    茶點故事閱讀 38,617評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡贬蛙,死狀恐怖,靈堂內的尸體忽然破棺而出谚攒,到底是詐尸還是另有隱情阳准,我是刑警寧澤,帶...
    沈念sama閱讀 34,276評論 4 329
  • 正文 年R本政府宣布馏臭,位于F島的核電站野蝇,受9級特大地震影響,放射性物質發(fā)生泄漏括儒。R本人自食惡果不足惜绕沈,卻給世界環(huán)境...
    茶點故事閱讀 39,882評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望帮寻。 院中可真熱鬧乍狐,春花似錦、人聲如沸固逗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,740評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽烫罩。三九已至惜傲,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間贝攒,已是汗流浹背盗誊。 一陣腳步聲響...
    開封第一講書人閱讀 31,967評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留隘弊,地道東北人哈踱。 一個月前我還...
    沈念sama閱讀 46,315評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像长捧,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子吻贿,可洞房花燭夜當晚...
    茶點故事閱讀 43,486評論 2 348

推薦閱讀更多精彩內容

  • 又忙了一周串结,事情差不多解決了,終于有可以繼續(xù)寫我的博客了(各位看官久等了)舅列。 這次我們來談一談Java里的一個很有...
    Python編程社區(qū)閱讀 220評論 0 0
  • 一肌割、回調的含義和用途 1. 什么是回調? 一般來說帐要,模塊之間都存在一定的調用關系把敞,從調用方式上看,可以分為三類:同...
    Coder_Y閱讀 1,762評論 0 5
  • 模塊之間總是存在這一定的接口榨惠,從調用方式上看奋早,可以分為三類:同步調用盛霎、回調和異步調用。同步調用是一種阻塞式調用耽装,也...
    值得一看的喵閱讀 468評論 0 0
  • 面向對象主要針對面向過程愤炸。 面向過程的基本單元是函數(shù)。 什么是對象:EVERYTHING IS OBJECT(萬物...
    sinpi閱讀 1,046評論 0 4
  • 一掉奄、Python簡介和環(huán)境搭建以及pip的安裝 4課時實驗課主要內容 【Python簡介】: Python 是一個...
    _小老虎_閱讀 5,723評論 0 10