工厂方法模式

接口
public interface Sender {
public void sender();
}
两个实现类
public class EmailSender implements Sender {
@Override
public void sender() {
System.out.println("EmailSender这个是email方法");
}
}
public class SmsSender implements Sender {
@Override
public void sender() {
System.out.println("SmsSender这个是sender");
}
}
工厂接口
public interface Provider {
public Sender produce();
}
工厂实现类
public class EmilFactory implements Provider {
@Override
public Sender produce() {
return new EmailSender();
}
}
public class SmsFactory implements Provider {
@Override
public Sender produce() {
// TODO Auto-generated method stub
return new SmsSender();
}
}
测试
public class Test {
public static void main(String[] args) {
new EmilFactory().produce().sender();
}
}
其核心返回值是个接口。 生成类的方法抽象成一个接口这样时类更加灵活

浙公网安备 33010602011771号