1. 创建一个公共接口
public interface Sender {
public void send();
}
2. 创建重写该接口方法的实体类
public class MailSender implements Sender{
@Override
public void send() {
System.out.println("这是MailSender");
}
}
public class SmsSender implements Sender{
@Override
public void send() {
System.out.println("这是SmsSender");
}
}
3. 创建公共工厂接口
public interface PublicFactory {
public Sender factory();
}
4. 创建重写该接口方法的实体类
public class MailSender implements Sender{
@Override
public void send() {
System.out.println("这是MailSender");
}
}
public class SmsFactory implements PublicFactory{
@Override
public Sender factory() {
return new SmsSender();
}
}
5. 测试
public class Test {
public static void main(String[] args) {
/**
* 工厂模式
*/
MailFactory mailFactory = new MailFactory();
Sender sender1 = mailFactory.factory();
sender1.send();
SmsFactory smsFactory = new SmsFactory();
Sender sender2 = smsFactory.factory();
sender2.send();
}
}