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

2014-11-24 08:22:23 ¡¤ ×÷Õß: ¡¤ ä¯ÀÀ: 7
;
}
}

¡¡¡¡¾ßÌå²úÆ·ÀàGoodbyeMessage

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

/**
* @author: ÌØÖÖ±ø¡ªAK47
* @´´½¨Ê±¼ä£º2012-6-25 ÏÂÎç02:32:45
*
* @Àà˵Ã÷ £º¾ßÌå²úÆ·ÀàGoodbyeMessage
*/
public class GoodbyeMessage extends AutoMessage {
/**
* Î޲ι¹Ô캯Êý
*/
public GoodbyeMessage() {
System.out.println("·¢ËÍ»¶ËÍÐÅÏ¢");
}
}
package com.bankht.Builder.mail;

/**
* @author: ÌØÖÖ±ø¡ªAK47
* @´´½¨Ê±¼ä£º2012-6-25 ÏÂÎç02:32:45
*
* @Àà˵Ã÷ £º¾ßÌå²úÆ·ÀàGoodbyeMessage
*/
public class GoodbyeMessage extends AutoMessage {
/**
* Î޲ι¹Ô캯Êý
*/
public GoodbyeMessage() {
System.out.println("·¢ËÍ»¶ËÍÐÅÏ¢");
}
}

¡¡¡¡³éÏó½¨ÔìÕßÀà

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

import java.util.Date;

/**
* @author: ÌØÖÖ±ø¡ªAK47
* @´´½¨Ê±¼ä£º2012-6-25 ÏÂÎç02:33:07
*
* @Àà˵Ã÷ £º³éÏó½¨ÔìÕßÀà
*/
public abstract class Builder {
protected AutoMessage msg;

// ±êÌâÁã¼þµÄ½¨Ôì·½·¨
public abstract void buildSubject();

// ÄÚÈÝÁã¼þµÄ½¨Ôì·½·¨
public abstract void buildBody();

// ÊÕ¼þÈËÁã¼þµÄ½¨Ôì·½·¨
public void buildTo(String to) {
msg.setTo(to);
}

// ·¢¼þÈËÁã¼þµÄ½¨Ôì·½·¨
public void buildFrom(String from) {
msg.setFrom(from);
}

// ·¢ËÍʱ¼äÁã¼þµÄ½¨Ôì·½·¨
public void buildSendDate() {
msg.setSendDate(new Date());
}

/**
* Óʼþ²úÆ·Íê³Éºó£¬Óô˷½·¨·¢ËÍÓʼþ ´Ë·½·¨Ï൱ÓÚ²úÆ··µ»¹·½·¨
*/
public void sendMessage() {
msg.send();
}
}
package com.bankht.Builder.mail;

import java.util.Date;

/**
* @author: ÌØÖÖ±ø¡ªAK47
* @´´½¨Ê±¼ä£º2012-6-25 ÏÂÎç02:33:07
*
* @Àà˵Ã÷ £º³éÏó½¨ÔìÕßÀà
*/
public abstract class Builder {
protected AutoMessage msg;

// ±êÌâÁã¼þµÄ½¨Ôì·½·¨
public abstract void buildSubject();

// ÄÚÈÝÁã¼þµÄ½¨Ôì·½·¨
public abstract void buildBody();

// ÊÕ¼þÈËÁã¼þµÄ½¨Ôì·½·¨
public void buildTo(String to) {
msg.setTo(to);
}

// ·¢¼þÈËÁã¼þµÄ½¨Ôì·½·¨
public void buildFrom(String from) {
msg.setFrom(from);
}

// ·¢ËÍʱ¼äÁã¼þµÄ½¨Ôì·½·¨
public void buildSendDate() {
msg.setSendDate(new Date());
}

/**
* Óʼþ²úÆ·Íê³Éºó£¬Óô˷½·¨·¢ËÍÓʼþ ´Ë·½·¨Ï൱ÓÚ²úÆ··µ»¹·½·¨
*/
public void sendMessage() {
msg.send();
}
}

¡¡¡¡¾ßÌ彨ÔìÕßWelcomeBuilder

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

/**
* @author: ÌØÖÖ±ø¡ªAK47
* @´´½¨Ê±¼ä£º2012-6-25 ÏÂÎç02:33:36
*
* @Àà˵Ã÷ £º¾ßÌ彨ÔìÕßWelcomeBuilder
*/
public class WelcomeBuilder extends Builder {
public WelcomeBuilder() {
msg = new WelcomeMessage();
}

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

@Override
public void buildSubject() {
// TODO Auto-generated method stub
msg.setSubject("»¶Ó­±êÌâ");
}
}
package com.bankht.Builder.mail;

/**
* @author: ÌØÖÖ±ø¡ªAK47
* @´´½¨Ê±¼ä£º2012-6-25 ÏÂÎç02:33:36
*
* @Àà˵Ã÷ £º¾ßÌ彨ÔìÕßWelcomeBuilder
*/
public class WelcomeBuilder extends Builder {
public WelcomeBuilder() {
msg = new WelcomeMessage();
}

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

@Override
public void buildSubject() {
// TODO Auto-generated method stub
msg.setSubject("»¶Ó­±êÌâ");
}
}

¡¡¡¡¾ßÌ彨ÔìÕßGoodbyeBuilder

[java]
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() {