java设计模式之一:普通工厂模式

来源:互联网 发布:淘宝的退款率怎么看 编辑:程序博客网 时间:2024/05/29 12:46

最近在学习spring源码,在spring里应用的一些设计模式,特意总结出来.
普通工厂目的:对实现了同一接口的一些类进行实例的创建(就是在工厂模式把实现一个接口的所有的类都创建创建对象new)

实例:
1.创建一个要被实现的接口:
public interface Sender {
public void send();
}

2.创建两个实现Sender接口的类
(1).
public class MailSender implements Sender {
@Override
public void send() {
System.out.println(“this is mailsender!”);
}
}
(2).
public class SmsSender implements Sender {
@Override
public void send() {
System.out.println(“this is SMS sender!”);
}
}

3.创建普通工厂模式:
public class SendFactory {
//返还是interface Sender 不是具体实现接口的实体类
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;
}
}
}

4.测试类:
public class FactoryTest {
public static void main(String[] args){
//创建工厂模式
SendFactory factory = new SendFactory();
Sender sender = factory.produce(“sms”); //普通工厂模式创建对象
sender.send();
}
}

原创粉丝点击