您的位置:首页 > 编程语言 > Java开发

《大话设计模式》代码JAVA版-第7章 代理模式

2012-02-26 23:38 399 查看


publicinterface GiveGift {
void giveDolls();
void giveFlowers();
void giveChocolate();
}

publicclass SchoolGirl {
private String name;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}
}

publicclass Suitor implements GiveGift{
private SchoolGirl mm;

public Suitor(SchoolGirl mm) {
this.mm = mm;
}

public void giveDolls() {
System.out.println("Suitor givesdolls to " + mm.getName());
}
publicclass Proxy implements GiveGift {
private Suitor gg;

public Proxy(SchoolGirl mm) {
this.gg = new Suitor(mm);
}

public void giveDolls() {
gg.giveDolls();
}

public void giveFlowers() {
gg.giveFlowers();
}

public void giveChocolate() {
gg.giveChocolate();
}
}

/**
* A suitor gives gifts to a school girl by aproxy.
*/
publicclass ProxyClient {
public static void main (String[] args) {
SchoolGirl schoolGirl = newSchoolGirl();
schoolGirl.setName("Mary");

Proxy proxy = new Proxy(schoolGirl);

proxy.giveChocolate();
proxy.giveDolls();
proxy.giveFlowers();
}
}

public void giveFlowers() {
System.out.println("Suitor givesflowers to " + mm.getName());
}

public void giveChocolate() {
System.out.println("Suitor giveschocolate to " + mm.getName());
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: