7.4 符合实际的代码
十分钟后。小菜第三份代码。
结构图

代理接口如下
interface IGiveGift { void GiveDolls(); void GiveFlowers(); void GiveChocolate(); }
追求者类如下

代理类如下

客户端如下
static void Main(string[] args) { SchoolGirl jiaojiao = new SchoolGirl(); jiaojiao.Name = "李娇娇"; Proxy daili = new Proxy(jiaojiao); daili.GiveDolls(); daili.GiveFlowers(); daili.GiveChocolate(); Console.Read(); }
“这下好了,娇娇不认识追求她的人,但却可以通过代理人得到礼物。效果其实是达到了。”
“这就是代理模式。好了,我们来看看GoF对代理模式是如何描述的。”