抽象工厂模式定义了创建一组具有相互依赖关系对象的接口,针对多产品族,多产品等级结构。
1.比如java.sql.Connection就采用抽象工厂模式
Connection接口源码如下所示,其定义了Statement、PreparedStatement、CallableStatement三个产品等级结构。
public interface Connection extends Wrapper, AutoCloseable { //返回普通的sql执行器 Statement createStatement() throws SQLException; //返回具有参数化预编译功能的sql执行器 PreparedStatement prepareStatement(String sql) throws SQLException; //返回可以执行存储过程的sql执行器 CallableStatement prepareCall(String sql) throws SQLException; }