您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

使用工厂方法了解JDBC之类的服务提供程序框架背后的概念

使用工厂方法了解JDBC之类的服务提供程序框架背后的概念

考虑如下内容

public interface MyService {
  void doSomething();
}

public class MyServiceFactory {
  public static MyService getService() {
    try {
      (MyService) Class.forName(System.getProperty("MyServiceImpleMetation")).newInstance();
    } catch (Throwable t) {
      throw new Error(t);
    }
  }
}

使用此代码,您的库无需了解服务的实现。库的用户必须设置一个系统属性,其中包含他们要使用的实现的名称

这就是您不理解的句子的意思:factory方法将返回某个类的实例(其名称存储在系统属性“ MyServiceImplementation”中),但绝对不知道它是什么类。它所知道的就是它实现了MyService,并且必须有一个公共的,无参数的构造函数(否则,上面的工厂将抛出Error)。

其他 2022/1/1 18:31:02 有409人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶