Java---设计模式---工厂

场景和问题

    Java程序开发讲究面向接口编程,隐藏具体的实现类,可是如何得到接口呢?

    工厂类的命名规范:***Factory
    单例工厂方法的命名规范:getInstance()


工厂的本质是“选择实现”

    工厂、接口和实现类之间的技术边界:工厂只负责选择实现,实现类才做真正的实现,而接口是限定到底实现什么东西和返回什么东西,三者之间分工明确、各负其责。

代码:

这是两个模块之间的调用

Client类:
public class Client {
	public static void main(String[] args) {
		Api api = Module1Factory.getInstancOfApi();
		api.fun();
	}
}
Api接口:
public interface Api {
	public abstract void fun();
}
Api接口实现类ImplApi_1:
public class ImplApi_1 implements Api {

	@Override
	public void fun() {
		System.out.println("方式1...");
	}

}
Api接口实现类ImplApi_2:
public class ImplApi_2 implements Api {

	@Override
	public void fun() {
		System.out.println("方式2...");
	}

}
module2的工厂类 Module1Factory:
public class Module1Factory {
	//封掉构造函数
	private Module1Factory(){
	}
	//通过工厂方法获取Api接口的实现类  对象实例
	public static Api getInstancOfApi(){
		return new ImplApi_2();
	}
}


猜你喜欢

转载自blog.csdn.net/qq_34928644/article/details/79938872
今日推荐