java设计模式-简单工厂
我们以发送邮件和短信为例
1.创建两者的共同接口
public interface Sender {
public void Sender();
}
2.其次,创建实现类
邮件类
public class MailSender implements Sender{
public void Sender() {
System.out.println("this is mialsender!");
}
}
短信类
public class SmsSender implements Sender{
public void Sender() {
System.out.println("this is smssender!");
}
}
最后,创建工厂类
public class SenderFactory {
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) {
SenderFactory factory = new SenderFactory();
//我们需要什么就向里面传递什么,工厂会返回给我们需要的
Sender sender = factory.produce("sms");
sender.Sender();
}
}