Java.util.ServiceLoader 类

简介

java.util.ServiceLoader 类是一个简单的服务提供者加载工具。以下是关于 ServiceLoader 的要点 −

  • 服务加载程序始终在调用者的安全上下文中执行。受信任的系统代码通常应该从特权安全上下文中调用此类中的方法以及它们返回的迭代器的方法。

  • 此类实例对于多个并发线程使用是不安全的。


类声明

以下是 java.util.ServiceLoader 类的声明 −

public final class ServiceLoader<S>
   extends Object
   implements Iterable<S>

参数

以下是 java.util.ServiceLoader 类的参数 −

S − 这是此加载程序要加载的服务类型。


类方法

序号 方法 & 描述
1 Iterator<S> iterator()

此方法加载此加载器服务的可用提供者。

2 public static <S> ServiceLoader<S> load(Class<S> service)

此方法使用当前线程的上下文类加载器为给定的服务类型创建一个新的服务加载器。

3 public static <S> ServiceLoader<S> load(Class<S> service, ClassLoader loader)

此方法为给定的服务类型和类加载器创建一个新的服务加载器。

4 public static <S> ServiceLoader<S> loadInstalled(Class<S> service)

T他的方法使用扩展类加载器为给定的服务类型创建一个新的服务加载器。

5 void reload()

此方法清除此加载程序的提供程序缓存,以便重新加载所有提供程序。

6 String toString()

此方法返回描述此服务的字符串。


继承的方法

这个类继承了以下类的方法 −

  • java.util.Object