java設計模式之一:普通工廠模式

最近在學習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();
}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章