Uml图:
//子系统:
//CheckWord.java
public class CheckWord {
public final int basicAmout =85;
String advertisement;
int amout;
public CheckWord(String advertisement) {
this.advertisement=advertisement;
}
public void setChargeAmout() {
amout =advertisement.length()+basicAmout;//计算出计费字符数目
}
public int getAmout(){
return amout;
}
}
//Charge.java
public class Charge {
public final int basicCharge =12;
CheckWord checkWord;
public Charge(CheckWord checkWord) {
this.checkWord=checkWord;
}
public void giveCharge() {
int charge=checkWord.getAmout()*basicCharge;
System.out.println("费用为"+charge+"元");
}
}
//TypeSeting.java
public class TypeSeting {
String advertisement;
public TypeSeting(String advertisement) {
this.advertisement=advertisement;
}
public void typeSetting() {
System.out.println("排版");
System.out.println("**********");
System.out.println(advertisement);
System.out.println("**********");
}
}
//外观:
public class ClientServerFacade {
private CheckWord checkWord;
private Charge charge;
private TypeSeting typeSeting;
String advertisement;
public ClientServerFacade(String advertisement) {
this.advertisement =advertisement;
checkWord=new CheckWord(advertisement);
charge =new Charge(checkWord);
typeSeting=new TypeSeting(advertisement);
}
public void Advertisement() {
checkWord.setChargeAmout();
charge.giveCharge();
typeSeting.typeSetting();
}
}
//模式使用:
public class Application {
public static void main(String[] args) {
ClientServerFacade clientServerFacade;
String clentAdvertisementString = "sony 笔记本,售价5000";
clientServerFacade = new ClientServerFacade(clentAdvertisementString);
clientServerFacade.Advertisement();
}
}
大小: 10 KB
分享到:
2012-04-19 00:35
浏览 2169
评论