resources(String): This method is available in the java.lang.ClassLoader class of Java.
Syntax:
Stream<URL> java.lang.ClassLoader.resources(String name)
This method takes one argument. This method returns a stream whose elements are the URLs of all the resources with the given name.
A resource is some data (images, audio, text, etc) that can be accessed by class code in a way that is independent of the location of the code.
The name of a resource is a /-separate path name that identifies the resource.
Parameters: One parameter is required for this method.
name: The resource name.
Returns: A stream of resource URL objects. If no resources could be found, the stream will be empty.
Throws:
1. NullPointerException - If the name is null.
Approach 1: When no exception
Java
package com.ClassLoader;public class ClassLoaderresources {public static void main(String[] args) {ClassLoader classLoader =ClassLoader.getSystemClassLoader();String name = "java.lang.String";System.out.println(classLoader.resources(name));}}
Output:
java.util.stream.ReferencePipeline$Head@77afea7d
Approach 2: NullPointerException
Java
package com.ClassLoader;public class ClassLoaderresources {public static void main(String[] args) {ClassLoader classLoader =ClassLoader.getSystemClassLoader();String name = null;System.out.println(classLoader.resources(name));}}
Output:
Exception in thread "main" java.lang.NullPointerException at java.base/java.util.Objects.requireNonNull(Objects.java:208) at java.base/java.lang.ClassLoader.resources(ClassLoader.java:1527) at com.ClassLoader.ClassLoaderresources.main(ClassLoaderresources.java:10)
Some other methods of ClassLoader class
clearAssertionStatus(): This method sets the default assertion status for this class loader to false and discards any package defaults or class assertion status settings associated with the class loader.
getDefinedPackage(String): This method returns a Package of the given name that has been defined by this class loader.
getDefinedPackages(): This method returns all of the Packages that have been defined by this class loader.
getName(): This method returns the name of this class loader or null if this class loader is not named.
getParent(): This method returns the parent class loader for delegation. Some implementations may use null to represent the bootstrap class loader.
ClassLoader.getPlatformClassLoader(): This method returns the platform class loader. All platform classes are visible to the platform class loader.
getResource(String): This method finds the resource with the given name.
getResourceAsStream(String): This method returns an input stream for reading the specified resource.
getResources(String): This method finds all the resources with the given name.
ClassLoader.getSystemClassLoader(): This method returns the system class loader.
ClassLoader.getSystemResource(String): This method finds a resource of the specified name from the search path used to load classes.
ClassLoader.getSystemResourceAsStream(String): This method is open for reading, a resource of the specified name from the search path used to load classes.
ClassLoader.getSystemResources(String): This method finds all resources of the specified name from the search path used to load classes.
getUnnamedModule(): This method returns the unnamed Module for this class loader.
isRegisteredAsParallelCapable(): This method returns true if this class loader is registered as parallel capable, otherwise false.
loadClass(String): This method loads the class with the specified binary name.
resources(String): This method returns a stream whose elements are the URLs of all the resources with the given name.
setClassAssertionStatus(String, boolean): This method sets the desired assertion status for the named top-level class in this class loader and any nested classes contained therein.
setDefaultAssertionStatus(boolean): This method sets the default assertion status for this class loader.
setPackageAssertionStatus(String, boolean): This method sets the package default assertion status for the named package.
No comments:
Post a Comment