《Effective Java》服务提供者框架
Posted 力奋
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《Effective Java》服务提供者框架相关的知识,希望对你有一定的参考价值。
静态工厂方法返回的对象所属的类,在编写包含该静态工厂方法的类时可以不必存在。这种灵活的静态工厂方法构成了服务提供者框架(Service Provider Framework)的基础,例如JDBC API。服务提供者框架是指这样一个系统:多个服务提供者实现一个服务(接口),系统为服务提供者的客户端提供多个实现,并把他们从多个实现中解耦出来。
服务提供者框架中有四个重要的组件:
- 服务接口(Service Interface),这是提供者实现的。如JDBC的Connection
- 提供者注册API(Provider Registration API),这是系统用来注册提供者实现,让客户端访问它们的。如DriverManager.registerDriver
- 服务访问API(Service Access API),是客户端用来获取服务的实例的。如DriverManager.get
- 服务提供者接口(Service Provider Interface)这些提供者负责创建其服务实现的实例。这是可选的。如Driver
如果没有服务提供者接口,实现就按照类名称注册,并通过反射方式进行实例化。接口优于反射机制强烈建议使用服务提供者接口。
以上是关于《Effective Java》服务提供者框架的主要内容,如果未能解决你的问题,请参考以下文章