国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > 互联网 > 乒乓球问题

乒乓球问题

来源:程序员人生   发布时间:2014-10-12 10:30:04 阅读次数:1915次

乒乓球问题,指方法的来回调用.

1.一场Party

在伪中介模式(5.5)中,Boy与Boy、Boy与Girl的聊天,是典型的乒乓球。
public class Boy extends Actor{ @Override public void send(String message,Actor to){ pln(this.name+" To "+to.name+":""+message+"""); to.receive(message,this); } @Override public void receive(String message,Actor from){ char c = (char)(Math.random()*4+'a'); if(c!='b'){ String msg = message+" "+c; send(msg,from); } } }
对象a. send(String message,Actor to)代码中b..receive(message,this),而b.receive()代码中自己又send()。

2.回调

有人说,回调是“你调用我,我调用你”。这种错误不想再说它了。

3.命令模式

乒乓球可以看作命令模式的起源。直接给出的命令模式,可以死记硬背地理解,但是,为什么出现这么奇怪的想法,就有趣了。
即便yqj2065推演再三,感觉它类似中学几何证明题中需要添加的某一根辅助线,要绞尽脑汁或灵机一动才能够想到,但是还是不习惯。
推演并习惯之后,我会重新写命令模式,感觉就是行云流水?一江春水向东流?
&@#¥,“Cmd模式是回调机制的一个面向对象的替代品”? 为什么不说Cmd模式是策略模式的简单推广?为什么不说Cmd模式是万能适配器?
我将回调约等于观察者,那么Commond=IClient=Observer?


生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生