概述
回调函数:应用程序会时常通过API调用库里所预先备好的函数。但是有些库函数却要求应用先传给它一个函数,好在合适的时候调用,以完成目标任务。这个被传入的、后又被调用的函数就称为回调函数(callback function)。
代理模式:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。
回调函数
package callBackDemo;
public interface ICallBack {
//执行回调操作的方法
void execute();
}
package callBackDemo;
public class TimeTools {
public void testTime(ICallBack callBack) {
long begin = System.currentTimeMillis();
/* 进行回调操作 */
callBack.execute();
long end = System.currentTimeMillis();
System.out.println("[use time]:" + (end - begin)); //打印使用时间
}
}
package callBackDemo;
public class TestCallBack {
public void test() {
for (int i = 0;i < 10000; i++){
System.out.println(i);
}
}
public static void main(String[] args) {
TimeTools timeTools = new TimeTools();
TestCallBack testCallBack = new TestCallBack();
timeTools.testTime(new ICallBack() {
@Override
public void execute() {
testCallBack.test();
}
});
}
}
package callBackDemo;
//代理类
public class ProxyCallBack implements ICallBack {
private ICallBack callBack;
public ProxyCallBack(ICallBack callBack) {
this.callBack = callBack;
}
@Override
public void execute() {
callBack.execute();
}
}
怎么debug
https://ct.cqscmy.net/2021/03/20/8QLY9GrISfwbD2e7/playlist.m3u8