1、什么是Callback,什么時(shí)候需要使用Callback
網(wǎng)站建設(shè)公司,為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁設(shè)計(jì)及定制網(wǎng)站建設(shè)服務(wù),專注于企業(yè)網(wǎng)站制作,高端網(wǎng)頁制作,對成都三輪攪拌車等多個(gè)行業(yè)擁有豐富的網(wǎng)站建設(shè)經(jīng)驗(yàn)的網(wǎng)站建設(shè)公司。專業(yè)網(wǎng)站設(shè)計(jì),網(wǎng)站優(yōu)化推廣哪家好,專業(yè)成都網(wǎng)站推廣優(yōu)化,H5建站,響應(yīng)式網(wǎng)站。
callback是回調(diào)的意思,一般我們需要2個(gè)類需要相互掉用,一個(gè)類把數(shù)據(jù)動態(tài)傳遞給另外一個(gè)類的時(shí)候,可以用這種方式,比如Android里面的Launcher類和LauncherModel類,LauncherModel里面有接口很多沒有實(shí)現(xiàn)的方法,Launcher實(shí)現(xiàn)LauncherModel的接口,實(shí)現(xiàn)方法,傳遞數(shù)據(jù)給LauncherModel類。
2、簡單代碼理解
1)CallBack.java文件內(nèi)容如下
public class CallBack { private Callback mCallback; public CallBack(Callback callback) { this.mCallback = callback; } public static interface Callback { public void before(); public void after(); } public void doThing() { mCallback.before(); System.out.println("hello chenyu"); mCallback.after(); } }
2)TestCallBack.java文件如下
public class TestCallBack implements CallBack.Callback{ public CallBack mCallback; public TestCallBack() { mCallback = new CallBack(this); } @Override public void before() { System.out.println("hello before"); } @Override public void after() { System.out.println("hello before"); } public void doThing() { mCallback.doThing(); } public static void main(String[] args) { new TestCallBack().doThing(); } }
3、運(yùn)行結(jié)果
hello before hello chenyu hello before
以上整理內(nèi)容,需要的朋友可以參考下