Java到Android逐步理解接口回調(diào)

一,什么是接口回調(diào):

接口回調(diào)(自己理解):例如A.class這個(gè)類實(shí)現(xiàn)了某一接口(C)狈定,我們可以把創(chuàng)建A類對(duì)象的引用,通過(guò)B類對(duì)象的一個(gè)方法以傳遞參數(shù)途徑賦值給B類里面聲明的(接口)C變量习蓬,那么該接口變量就可以調(diào)用被類實(shí)現(xiàn)的接口方法纽什。

簡(jiǎn)單的代碼示例:

1:接口C

public interface C{

public void printname();

}

2:A.class里面:

B b=new B();

//通過(guò)B類的這個(gè)方法賦值給B類里面的接口變量c

b.setCallBack(new C(){

public void printname(){//這句話當(dāng)B類里面的c.printname();調(diào)用之后觸發(fā)。實(shí)現(xiàn)接口回調(diào)

}

});

3:B.class里面:

public C c;//B里面聲明的接口變量

setCallBack(C c){

this.c=c;//賦值接口變量

}

c.printname();

1.首先一個(gè)對(duì)象是:老板

2.另一個(gè)是對(duì)象是:程序員

一天晚上老板想知道現(xiàn)自己公司app用戶使用數(shù)量躲叼,自己不知道如何查詢芦缰,需要向下班后在家里的程序員打電話獲得, 然后程序員查詢完后發(fā)數(shù)據(jù)給老板枫慷。

二让蕾,代碼部分:


1,定義一個(gè)接口:程序員通過(guò)回調(diào)這個(gè)接口中的方法或听,設(shè)置數(shù)據(jù)(相當(dāng)于程序員查完數(shù)據(jù)給老板發(fā)送數(shù)據(jù)

package 接口回調(diào)實(shí)例java;

public interfaceGetDataInterface{

public void callBackByTell(String name);

}

2探孝,老板類:

老板類有2中寫法:都可以看你喜好。

寫法一:

package 接口回調(diào)實(shí)例java;

public class老板{

public static void main(String[] argus){

//1.實(shí)例化程序員對(duì)象

程序員 程序猿 =new 程序員();

//2.這里主要是傳遞一些信息給程序員對(duì)象誉裆,實(shí)例化程序員里面的接口顿颅。(這里采用內(nèi)部類)

程序猿.setCallPhone("我是浩總,你查查我們app使用的用戶數(shù)量", new GetDataInterface() {

//7.接受到程序員查詢結(jié)果

@Override

public void callBackByTell(String resultData) {

System.out.print("結(jié)果:"+resultData);

}

});

//4.開(kāi)始讓程序員查詢找御。

程序猿.查詢();

}

}

//寫法二:

package 接口回調(diào)實(shí)例java;

public class 老板1 implements GetDataInterface{

public static void main(String []argus){

程序員 程序員=new 程序員();

程序員.setCallPhone("我是浩總元镀,麻煩你查下我們app使用人數(shù)發(fā)給我",new 老板1());

程序員.查詢();

}

@Override

public void callBackByTell(String resultData) {

// TODO Auto-generated method stub

System.out.println(""+resultData);

}

}

3,程序員:

package 接口回調(diào)實(shí)例java;

public class程序員{

private String resultData;

GetDataInterface dataInterface;

//3.通過(guò)此方法來(lái)實(shí)例化接口霎桅,以及設(shè)置信息栖疑,message。

public void setCallPhone(String? message,GetDataInterface dataInterface){

System.out.println(message);

this.dataInterface=dataInterface;//這里實(shí)例化接口用于6設(shè)置數(shù)據(jù)

}

void 查詢(){

new Runnable(){

@SuppressWarnings("static-access")

@Override

public void run() {

// TODO Auto-generated method stub

try {

System.out.println("查詢中.....了10秒");

new Thread().sleep(10000);

//5這里是自己查詢的結(jié)果:

resultData="55555人";

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}.run();

//6.查詢完成之后回掉接口方法滔驶,設(shè)置數(shù)據(jù)遇革。老板獲得數(shù)據(jù)。

dataInterface.callBackByTell(resultData);

}

}

4,運(yùn)行結(jié)果:


三揭糕,結(jié)合代碼分析:

1.0 在這一過(guò)程中:首先老板需要聯(lián)系程序員(獲得程序員對(duì)象:程序員 程序猿 =new 程序員

();)萝快,并且實(shí)例化接口(到時(shí)候程序員 回老板電話)那么程序員必須有個(gè)電話或者微信,

qq之類的提供給? 老 板著角, 這里的這個(gè)(微信揪漩,電話,qq)等價(jià)于程序員對(duì) 象提供給老板

聯(lián)系自己 一個(gè)方法(setCallPhone)吏口。同時(shí)老板可以通過(guò)程序員 的這個(gè)方

法傳遞一些 信息給程序員奄容。程序猿.setCallPhone("你好我是浩總", new GetDataInterface() { }

2.0然后:程序員得到電話之后需要查詢用戶數(shù)量冰更。

這一步程序員可以進(jìn)行自己查詢過(guò)程:程序猿.查詢();

3.0最后一步:程序員通過(guò)查找之后知道了用戶數(shù)據(jù)量,通過(guò)setCallPhone已經(jīng)實(shí)例化的外部接口方

的法來(lái)發(fā)送數(shù)據(jù)給老板昂勒,實(shí)現(xiàn)回調(diào)蜀细。

dataInterface.callBackByTell(resultData);

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市戈盈,隨后出現(xiàn)的幾起案子奠衔,更是在濱河造成了極大的恐慌,老刑警劉巖塘娶,帶你破解...
    沈念sama閱讀 212,718評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件归斤,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡刁岸,警方通過(guò)查閱死者的電腦和手機(jī)官册,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)难捌,“玉大人膝宁,你說(shuō)我怎么就攤上這事「酰” “怎么了员淫?”我有些...
    開(kāi)封第一講書人閱讀 158,207評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)击敌。 經(jīng)常有香客問(wèn)我介返,道長(zhǎng),這世上最難降的妖魔是什么沃斤? 我笑而不...
    開(kāi)封第一講書人閱讀 56,755評(píng)論 1 284
  • 正文 為了忘掉前任圣蝎,我火速辦了婚禮,結(jié)果婚禮上衡瓶,老公的妹妹穿的比我還像新娘徘公。我一直安慰自己,他們只是感情好哮针,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,862評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布关面。 她就那樣靜靜地躺著,像睡著了一般十厢。 火紅的嫁衣襯著肌膚如雪等太。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 50,050評(píng)論 1 291
  • 那天蛮放,我揣著相機(jī)與錄音缩抡,去河邊找鬼。 笑死包颁,一個(gè)胖子當(dāng)著我的面吹牛瞻想,可吹牛的內(nèi)容都是我干的挎塌。 我是一名探鬼主播,決...
    沈念sama閱讀 39,136評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼内边,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了待锈?” 一聲冷哼從身側(cè)響起漠其,我...
    開(kāi)封第一講書人閱讀 37,882評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎竿音,沒(méi)想到半個(gè)月后和屎,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,330評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡春瞬,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,651評(píng)論 2 327
  • 正文 我和宋清朗相戀三年柴信,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片宽气。...
    茶點(diǎn)故事閱讀 38,789評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡随常,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出萄涯,到底是詐尸還是另有隱情绪氛,我是刑警寧澤,帶...
    沈念sama閱讀 34,477評(píng)論 4 333
  • 正文 年R本政府宣布涝影,位于F島的核電站枣察,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏燃逻。R本人自食惡果不足惜序目,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,135評(píng)論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望伯襟。 院中可真熱鬧猿涨,春花似錦、人聲如沸姆怪。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,864評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)片效。三九已至红伦,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間淀衣,已是汗流浹背昙读。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 32,099評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留膨桥,地道東北人蛮浑。 一個(gè)月前我還...
    沈念sama閱讀 46,598評(píng)論 2 362
  • 正文 我出身青樓唠叛,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親沮稚。 傳聞我的和親對(duì)象是個(gè)殘疾皇子艺沼,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,697評(píng)論 2 351

推薦閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類相關(guān)的語(yǔ)法蕴掏,內(nèi)部類的語(yǔ)法障般,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法盛杰,線程的語(yǔ)...
    子非魚_t_閱讀 31,602評(píng)論 18 399
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理挽荡,服務(wù)發(fā)現(xiàn),斷路器即供,智...
    卡卡羅2017閱讀 134,638評(píng)論 18 139
  • 小編費(fèi)力收集:給你想要的面試集合 1.C++或Java中的異常處理機(jī)制的簡(jiǎn)單原理和應(yīng)用定拟。 當(dāng)JAVA程序違反了JA...
    八爺君閱讀 4,580評(píng)論 1 114
  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 3,806評(píng)論 0 11
  • 作為一個(gè)即將走出象牙塔的學(xué)生黨驱证,面對(duì)著20幾歲的人生性穿,不知道你有沒(méi)有過(guò)這樣的體會(huì)?沒(méi)有伴侶、沒(méi)有工作雷滚、沒(méi)有經(jīng)驗(yàn)……...
    端銀閱讀 742評(píng)論 0 0