Java回调通俗理解

来源:互联网 发布:河南省大数据产业园 编辑:程序博客网 时间:2024/06/06 08:31

在网上找了很多的有关Java方法回调的实例,很多时候都是看的云里雾里,现在稍微对这个有一点自己的理解,所以写下了供大家参考,可能有误,谨慎参考。

说明:第一次主动调用的对象被称为“调用者”,调用者有一个调用方法A,被回调的方法AA。

   被调用的那个对象被称为“受调者”,受调者被调用者调用的那个方法为B。

过程:调用者方法A调用了受调者的方法B,B开始执行方法内的代码,然后这个方法在执行的过程中需要回去调用(回调)“调用者”的方法AA,很显然,受调者要想调用到方法AA,受调者的内部必须有调用者的对象才行(此时的这个对象与调用者是同一个对象),因此在调用者调用B之前需要将自己传入受调者,或者在调用B方法的时候通过形参将自己传入受调者。

结合代码进一步理解:

调用者:

package 回调;public class 调用者 {受调者 SS = new 受调者();public void A() {System.out.println("调用者调用前");SS.B(this);System.out.println("调用者调用后");}public void AA() {System.out.println("调用者被回调");}}

受调者:

package 回调;public class 受调者 {public void B(调用者 DD) {System.out.println("受调者被调开始");DD.AA();System.out.println("受调者被调结束");}}

测试:

package 回调;public class Test {public static void main(String[] args) {调用者 DD = new 调用者();DD.A();}}
执行结果:

调用者调用前受调者被调开始调用者被回调受调者被调结束调用者调用后





0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 橱柜的缝擦不到怎么办 悠悠球上油早了怎么办 买了没有esp的车怎么办 饥荒海难狗来了怎么办 饥荒海难拖网掉水里了怎么办 饥荒遇到了猪人怎么办 饥荒龙蝇赖在家不走怎么办 饥荒海难崩档了怎么办 gta5全是rpf文件怎么办 饥荒没有海象人营地怎么办 饥荒海滩猎犬来了怎么办 宝宝换牙门牙上长颗尖牙怎么办 肉卡在牙缝里怎么办 电脑做系统卡死怎么办 苹果6升级太卡怎么办 电脑玩不了联机饥荒怎么办 饥荒渡渡鸟死了一只怎么办 饥荒电脑联机植物生病怎么办 开车蹭到别人车怎么办 立定跳不会收腹怎么办 1岁宝宝有蛔虫怎么办 手机屏幕总是有网页跳出来怎么办 cs游戏屏幕变成正方形怎么办 大王卡被收回了怎么办 模拟人生4小人生病了怎么办 创造与魔法死后怎么办? 脚不小心扭伤了该怎么办 小鸡脚扭伤了该怎么办 跳高比赛最终成绩相等怎么办 热车1200怠速降不下来怎么办 大腿根骨髓水肿越来越疼怎么办 倒库方向打晚了怎么办 签吻芳颜祛斑液脸脱皮怎么办 3d右边工具栏消失了怎么办 3d菜单栏消失了怎么办 觉得自己性无能不敢谈对象怎么办 护士面试时被问到病人坠床怎么办 三次元仪器坏了怎么办 运动同手同脚怎么办 狗狗突然害怕不敢走路怎么办 一岁半宝宝因为害怕不敢走路怎么办