设计模式最常用的就是单例和工厂模式,单例的话主要是面试中会经常遇到,而工厂实际应用比较多,面试出现的几率也不小,话不多说,开始今天的课程。
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();
}
}