背景介绍
初学java时,我们经常性的通过new的方式来获得一个java对象。这种方式方便快捷(与现实生活形成了强烈的反差),但当项目大了之后,这种方式可能就存在问题了,比方说,这边代码需要优化,需要使用另一种实现方式,那你还要回过头来改代码。而大的项目可能使用这个java对象的地方很多,那你还要一处一处的慢慢去改。尽管现在IDE使用全局搜索,不会遗漏你要改的地方,但很费力不讨好。
引入简单工厂
既然new的方式不宜多用,那当我们想要一个对象时,应该问谁要呢?我们就想到了一个统一集中的地方——工厂。我想要一个对象了,就叫工厂帮我生产一个。而对我使用这个对象的来说,如果实现需要改变,我大可以不用管。因为有工厂帮我负责。
面向接口编程
如果可能有多种实现的类,我们可以做的就是将这个类抽象出来,变成一个接口,定义多个不同的类来实现这个接口。
简单工厂几种方式
- 准备原料
public interface Api {
public void aMethod();
}
public class Impl implements Api{
@Override
public void aMethod(){
System.out.println("this is implementation of Api Interface");
}
}
public class Impl2 implements Api{
@Override
public