¡¶JAVAÓëģʽ¡·µÚ5Ìì¨D½¨Ôìģʽ (Îå)

2014-11-24 08:22:23 ¡¤ ×÷Õß: ¡¤ ä¯ÀÀ: 10
// TODO Auto-generated method stub
msg.setSubject("»¶ËͱêÌâ");
}
}
package com.bankht.Builder.mail;

/**
* @author: ÌØÖÖ±ø¡ªAK47
* @´´½¨Ê±¼ä£º2012-6-25 ÏÂÎç02:34:15
*
* @Àà˵Ã÷ £º¾ßÌ彨ÔìÕßGoodbyeBuilder
*/
public class GoodbyeBuilder extends Builder {

public GoodbyeBuilder() {
msg = new GoodbyeMessage();
}

@Override
public void buildBody() {
// TODO Auto-generated method stub
msg.setBody("»¶ËÍÄÚÈÝ");
}

@Override
public void buildSubject() {
// TODO Auto-generated method stub
msg.setSubject("»¶ËͱêÌâ");
}
}
¡¡¡¡µ¼ÑÝÕßDirector£¬Õâ¸öÀàÌṩһ¸öconstruct()·½·¨£¬´Ë·½·¨µ÷Óý¨ÔìÕߵĽ¨Ôì·½·¨£¬°üÀ¨buildTo()¡¢buildFrom()¡¢buildSubject()¡¢buildBody()¡¢buildSendDate()µÈ£¬´Ó¶øÒ»²¿·ÖÒ»²¿·ÖµØ½¨Ôì³ö²úÆ·¶ÔÏ󣬼ÈAutoMessage¶ÔÏó¡£

[java]
package com.bankht.Builder.mail;

/**
* @author: ÌØÖÖ±ø¡ªAK47
* @´´½¨Ê±¼ä£º2012-6-25 ÏÂÎç02:34:52
*
* @Àà˵Ã÷ £ºµ¼ÑÝÕßDirector£¬Õâ¸öÀàÌṩһ¸öconstruct()·½·¨£¬´Ë·½·¨µ÷Óý¨ÔìÕߵĽ¨Ôì·½·¨£¬
* °üÀ¨buildTo()¡¢buildFrom()¡¢buildSubject()¡¢buildBody()¡¢buildSendDate()µÈ£¬
* ´Ó¶øÒ»²¿·ÖÒ»²¿·ÖµØ½¨Ôì³ö²úÆ·¶ÔÏ󣬼ÈAutoMessage¶ÔÏó¡£
*/
public class Director {
Builder builder;

/**
* Óвι¹Ô캯Êý
*/
public Director(Builder builder) {
this.builder = builder;
}

/**
* ²úÆ·¹¹Ôì·½·¨£¬¸ºÔðµ÷Óø÷Áã¼þµÄ½¨Ôì·½·¨
*/
public void construct(String toAddress, String fromAddress) {
this.builder.buildTo(toAddress);
this.builder.buildFrom(fromAddress);
this.builder.buildSubject();
this.builder.buildBody();
this.builder.buildSendDate();
this.builder.sendMessage();
}
}
package com.bankht.Builder.mail;

/**
* @author: ÌØÖÖ±ø¡ªAK47
* @´´½¨Ê±¼ä£º2012-6-25 ÏÂÎç02:34:52
*
* @Àà˵Ã÷ £ºµ¼ÑÝÕßDirector£¬Õâ¸öÀàÌṩһ¸öconstruct()·½·¨£¬´Ë·½·¨µ÷Óý¨ÔìÕߵĽ¨Ôì·½·¨£¬
* °üÀ¨buildTo()¡¢buildFrom()¡¢buildSubject()¡¢buildBody()¡¢buildSendDate()µÈ£¬
* ´Ó¶øÒ»²¿·ÖÒ»²¿·ÖµØ½¨Ôì³ö²úÆ·¶ÔÏ󣬼ÈAutoMessage¶ÔÏó¡£
*/
public class Director {
Builder builder;

/**
* Óвι¹Ô캯Êý
*/
public Director(Builder builder) {
this.builder = builder;
}

/**
* ²úÆ·¹¹Ôì·½·¨£¬¸ºÔðµ÷Óø÷Áã¼þµÄ½¨Ôì·½·¨
*/
public void construct(String toAddress, String fromAddress) {
this.builder.buildTo(toAddress);
this.builder.buildFrom(fromAddress);
this.builder.buildSubject();
this.builder.buildBody();
this.builder.buildSendDate();
this.builder.sendMessage();
}
}

¡¡¿Í»§¶ËClient

[java]
package com.bankht.Builder.mail;

/**
* @author: ÌØÖÖ±ø¡ªAK47
* @´´½¨Ê±¼ä£º2012-6-25 ÏÂÎç02:35:36
*
* @Àà˵Ã÷ £º¿Í»§¶ËClient
*/
public class Client {

public static void main(String[] args) {
Builder builder = new WelcomeBuilder();
Director director = new Director(builder);
director.construct("toAddress@126.com", "fromAddress@126.com");

}
}
package com.bankht.Builder.mail;

/**
* @author: ÌØÖÖ±ø¡ªAK47
* @´´½¨Ê±¼ä£º2012-6-25 ÏÂÎç02:35:36
*
* @Àà˵Ã÷ £º¿Í»§¶ËClient
*/
public class Client {

public static void main(String[] args) {
Builder builder = new WelcomeBuilder();
Director director = new Director(builder);
director.construct("toAddress@126.com", "fromAddress@126.com");

}
}

ÔËÐÐһϣº

[html]
·¢ËÍ»¶Ó­ÐÅÏ¢
ÊÕ¼þÈ˵ØÖ·£ºtoAddress@126.com
·¢¼þÈ˵ØÖ·£ºfromAddress@126.com
±êÌ⣺»¶Ó­±êÌâ
ÄÚÈÝ£º»¶Ó­ÄÚÈÝ
·¢ËÍÈÕÆÚ£ºMon Jun 25 14:47:37 CST 2012
·¢ËÍ»¶Ó­ÐÅÏ¢
ÊÕ¼þÈ˵ØÖ·£ºtoAddress@126.com
·¢¼þÈ˵ØÖ·£ºfromAddress@126.com
±êÌ⣺»¶Ó­±êÌâ
ÄÚÈÝ£º»¶Ó­ÄÚÈÝ
·¢ËÍÈÕÆÚ£ºMon Jun 25 14:47:37 CST 2012

Èç¹û½«Client.javaÖдúÂë

¸ÄΪ£º

[java]
Builder builder = new GoodbyeBuilder();
Builder builder = new GoodbyeBuilder();

ÔËÐнá¹ûÔò±äΪ£º

[html]
·¢ËÍ»¶ËÍÐÅÏ¢
ÊÕ¼þÈ˵ØÖ·£ºtoAddress@126.com
·¢¼þÈ˵ØÖ·£ºfromAd