设计模式 简单工厂模式

首先写一个接口


public interface Sender {
	public void Send();
}

在写两个类用来继承


public class MailSender implements Sender{
	
	public void Send()
	{
		System.out.println("this is MailSender");
	}

}


public class SmsSender implements Sender {

	@Override
	public void Send() {
		System.out.println("thi is SmsSender");
	}

}


然后写上工厂


public class SendFactory {

	public Sender produce(String type)
	{
		if("mail".equals(type))
		{
			return new MailSender();
		}
		else if ("sms".equals(type))
		{
			return new SmsSender();
		}
		else
		{
			System.out.println("请输入正确的类型");
			return null;
		}
	}
}

在写上工厂测试类


public class FactoryTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		SendFactory factory = new SendFactory();
		Sender sender = factory.produce("sms");
		sender.Send();
	}

}

使用条件

工厂模式适合:凡是出现了大量的产品需要创建,并且具有共同的接口时,可以通过工厂方法模式进行创建。

posted @ 2016-10-29 19:10  yufenghou  阅读(113)  评论(0编辑  收藏  举报