設計模式最常用的就是單例和工廠模式,單例的話主要是面試中會經常遇到,而工廠實際應用比較多,面試出現的機率也不小,話不多說,開始今天的課程。
1,什麼是工廠設計模式
個人理解:工廠設計模式可以理解爲一個接口的集合,將許多接口封裝在一個類裏面,無論使用那個接口都得調用這個封裝類。
比如:現在有一個汽車工廠,裏面製造很多品牌的汽車,你想要一輛寶馬車,你直接給工廠說“給我一輛寶馬”,然後工廠就會給你一亮寶馬,如果你要奔馳,你就說“給我一輛奔馳”,工廠就會給你一輛奔馳。
2,爲什麼使用工廠設計模式
要理解一個概念,工廠設計模式是一般底層程序員幾乎用不到得東西,它一般都是架構這一塊才用,它只要的目的就是方便隔離代碼,也就是說身份的隔離,將架構師與普通程序員隔離開來。
普通程序員只需要調用人家寫好的封裝類就行了。
3,工廠設計模式案例
- 創建兩個車,寶馬和奔馳;
package gongchang;
public class baoma implements car{
@Override
public void run() {
System.out.println("這是一輛寶馬!");
}
}
package gongchang;
public class benchi implements car{
@Override
public void run() {
System.out.println("這是一輛奔馳車!");
}
}
- 它們都實現了car這個類;
package gongchang;
public interface car {
//run方法表示啓動的意思。
public void run();
}
- 設計一個工廠類
package gongchang;
public class gongchang {
//這是一個汽車工廠
public static car getcar(String carname){
car c = null;
if(carname == "寶馬"){
c = new baoma();
}else if(carname == "奔馳"){
c = new benchi();
}
return c;
}
}
- 測試工廠類
package gongchang;
public class test {
public static void main(String[] args) {
car c1 = gongchang.getcar("寶馬");
car c2 = gongchang.getcar("奔馳");
c1.run();
c2.run();
}
}