码迷,mamicode.com
首页 > 其他好文 > 详细

乒乓球问题

时间:2014-09-27 03:56:59      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:java   设计模式   

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

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推演再三,感觉它类似中学几何证明题中需要添加的某一根辅助线,要绞尽脑汁或灵机一动才能够想到,但是还是不习惯。

乒乓球问题

标签:java   设计模式   

原文地址:http://blog.csdn.net/yqj2065/article/details/39591119

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!