乒乓球问题,指方法的来回调用.
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推演再三,感觉它类似中学几何证明题中需要添加的某一根辅助线,要绞尽脑汁或灵机一动才能够想到,但是还是不习惯。
时间: 2024-10-20 14:59:30