为什么要用接口回调

        先说什么叫回调,是指通过函数参数传递到其它代码的,某一块可执行代码引用。这一设计允许了底层代码调用在高层定义的子程序

        因为设计底层代码时并不知道上层代码是怎样实现的,而底层代码又需要上层的实现时,就产生了回调的使用场景,比如jdk设计集合库和线程库时就有用到过,如Collections.sort(List<T> list, Comparator<? super T> c),Comparator接口就是让上层用户实现然后被底层调用,线程的Runnable接口也是如此。

        然后再说为什么要用接口去回调,那是因为java是一种将指针封装隐藏的语言,并不能使用函数指针,所以才会去用接口去实现回调。

猜你喜欢

转载自blog.csdn.net/reinnovation/article/details/79755053
今日推荐