# Uses of Class
java.util.ServiceLoader

Packages that use ServiceLoader
Package
Description
java.util
Contains the collections framework, some internationalization support classes, a service loader, properties, random number generation, string parsing and scanning classes, base64 encoding and decoding, a bit array, and several miscellaneous utility classes.
javax.tools
Provides interfaces for tools which can be invoked from a program, for example, compilers.

## Uses of ServiceLoader in java.util

Methods in java.util that return ServiceLoader
Modifier and Type
Method
Description
`static <S> ServiceLoader<S>`
ServiceLoader.`load(Class<S> service)`
Creates a new service loader for the given service type, using the current thread's context class loader.
`static <S> ServiceLoader<S>`
ServiceLoader.`load(Class<S> service, ClassLoader loader)`
Creates a new service loader for the given service.
`static <S> ServiceLoader<S>`
ServiceLoader.`load(ModuleLayer layer, Class<S> service)`
Creates a new service loader for the given service type to load service providers from modules in the given module layer and its ancestors.
`static <S> ServiceLoader<S>`
ServiceLoader.`loadInstalled(Class<S> service)`
Creates a new service loader for the given service type, using the platform class loader.

## Uses of ServiceLoader in javax.tools

Methods in javax.tools that return ServiceLoader
Modifier and Type
Method
Description
`<S> ServiceLoader<S>`
ForwardingJavaFileManager.`getServiceLoader(JavaFileManager.Location location, Class<S> service)`
`default <S> ServiceLoader<S>`
JavaFileManager.`getServiceLoader(JavaFileManager.Location location, Class<S> service)`
Get a service loader for a specific service class from a given location.