Object, which is the root of the class hierarchy, and
Class, instances of which represent classes at run time.
Frequently it is necessary to represent a value of primitive
type as if it were an object. The wrapper classes
Double serve this purpose. An object of type
Double, for example, contains a field whose type is double,
representing that value in such a way that a reference to it can be
stored in a variable of reference type. These classes also provide
a number of methods for converting among primitive values, as well
as supporting such standard methods as equals and hashCode. The
Void class is a non-instantiable class that holds a
reference to a
Class object representing the type void.
Math provides commonly used mathematical
functions such as sine, cosine, and square root. The classes
provide commonly used operations on character strings.
System provide "system operations" that manage the dynamic
loading of classes, creation of external processes, host
environment inquiries such as the time of day, and enforcement of
Character EncodingsThe specification of the
java.nio.charset.Charsetclass describes the naming conventions for character encodings as well as the set of standard encodings that must be supported by every implementation of the Java platform.
Interface Summary Interface Description AppendableAn object to which
charsequences and values can be appended.
AutoCloseableAn object that may hold resources (such as file or socket handles) until it is closed. CharSequenceA
CharSequenceis a readable sequence of
CloneableA class implements the
Cloneableinterface to indicate to the
Object.clone()method that it is legal for that method to make a field-for-field copy of instances of that class.
Comparable<T>This interface imposes a total ordering on the objects of each class that implements it. Iterable<T>Implementing this interface allows an object to be the target of the enhanced
forstatement (sometimes called the "for-each loop" statement).
ProcessHandleProcessHandle identifies and provides control of native processes. ProcessHandle.InfoInformation snapshot about the process. ReadableA
Readableis a source of characters.
Runnableinterface should be implemented by any class whose instances are intended to be executed by a thread.
StackFrameobject represents a method invocation returned by
System.Loggerinstances log messages that will be routed to the underlying logging framework the
Thread.UncaughtExceptionHandlerInterface for handlers invoked when a
Threadabruptly terminates due to an uncaught exception.
Class Summary Class Description BooleanThe Boolean class wraps a value of the primitive type
booleanin an object.
Byteclass wraps a value of primitive type
bytein an object.
Characterclass wraps a value of the primitive type
charin an object.
Character.SubsetInstances of this class represent particular subsets of the Unicode character set. Character.UnicodeBlockA family of character subsets representing the character blocks in the Unicode specification. Class<T>Instances of the class
Classrepresent classes and interfaces in a running Java application.
ClassLoaderA class loader is an object that is responsible for loading classes. ClassValue<T>Lazily associate a computed value with (potentially) every type. Compiler Deprecated, for removal: This API element is subject to removal in a future version.JIT compilers and their technologies vary too widely to be controlled effectively by a standardized interface. DoubleThe
Doubleclass wraps a value of the primitive type
doublein an object.
Enum<E extends Enum<E>>This is the common base class of all Java language enumeration types. Enum.EnumDesc<E extends Enum<E>>A nominal descriptor for an
Floatclass wraps a value of primitive type
floatin an object.
InheritableThreadLocal<T>This class extends
ThreadLocalto provide inheritance of values from parent thread to child thread: when a child thread is created, the child receives initial values for all inheritable thread-local variables for which the parent has values.
Integerclass wraps a value of the primitive type
intin an object.
Longclass wraps a value of the primitive type
longin an object.
Mathcontains methods for performing basic numeric operations such as the elementary exponential, logarithm, square root, and trigonometric functions.
ModuleRepresents a run-time module, either
ModuleLayerA layer of modules in the Java virtual machine. ModuleLayer.ControllerControls a module layer. NumberThe abstract class
Numberis the superclass of platform classes representing numeric values that are convertible to the primitive types
Objectis the root of the class hierarchy.
PackageRepresents metadata about a run-time package associated with a class loader. Process
Processprovides control of native processes started by ProcessBuilder.start and Runtime.exec.
ProcessBuilderThis class is used to create operating system processes. ProcessBuilder.RedirectRepresents a source of subprocess input or a destination of subprocess output. RecordAssociated with records, a preview feature of the Java language.
This is the common base class of all Java language record classes.
RuntimeEvery Java application has a single instance of class
Runtimethat allows the application to interface with the environment in which the application is running.
Runtime.VersionA representation of a version string for an implementation of the Java SE Platform. RuntimePermissionThis class is for runtime permissions. SecurityManagerThe security manager is a class that allows applications to implement a security policy. ShortThe
Shortclass wraps a value of primitive type
shortin an object.
StackTraceElementAn element in a stack trace, as returned by
StackWalkerA stack walker. StrictMathThe class
StrictMathcontains methods for performing basic numeric operations such as the elementary exponential, logarithm, square root, and trigonometric functions.
Stringclass represents character strings.
StringBufferA thread-safe, mutable sequence of characters. StringBuilderA mutable sequence of characters. SystemThe
Systemclass contains several useful class fields and methods.
LoggerFinderservice is responsible for creating, managing, and configuring loggers to the underlying framework it uses.
ThreadA thread is a thread of execution in a program. ThreadGroupA thread group represents a set of threads. ThreadLocal<T>This class provides thread-local variables. ThrowableThe
Throwableclass is the superclass of all errors and exceptions in the Java language.
Voidclass is an uninstantiable placeholder class to hold a reference to the
Classobject representing the Java keyword void.
Enum Summary Enum Description Character.UnicodeScriptA family of character subsets representing the character scripts defined in the Unicode Standard Annex #24: Script Names. ProcessBuilder.Redirect.TypeThe type of a
StackWalker.OptionStack walker option to configure the stack frame information obtained by a
System.Logger.LevelSystem loggers levels. Thread.StateA thread state.
Exception Summary Exception Description ArithmeticExceptionThrown when an exceptional arithmetic condition has occurred. ArrayIndexOutOfBoundsExceptionThrown to indicate that an array has been accessed with an illegal index. ArrayStoreExceptionThrown to indicate that an attempt has been made to store the wrong type of object into an array of objects. ClassCastExceptionThrown to indicate that the code has attempted to cast an object to a subclass of which it is not an instance. ClassNotFoundExceptionThrown when an application tries to load in a class through its string name using: The
forNamemethod in class
CloneNotSupportedExceptionThrown to indicate that the
clonemethod in class
Objecthas been called to clone an object, but that the object's class does not implement the
EnumConstantNotPresentExceptionThrown when an application tries to access an enum constant by name and the enum type contains no constant with the specified name. ExceptionThe class
Exceptionand its subclasses are a form of
Throwablethat indicates conditions that a reasonable application might want to catch.
IllegalAccessExceptionAn IllegalAccessException is thrown when an application tries to reflectively create an instance (other than an array), set or get a field, or invoke a method, but the currently executing method does not have access to the definition of the specified class, field, method or constructor. IllegalArgumentExceptionThrown to indicate that a method has been passed an illegal or inappropriate argument. IllegalCallerExceptionThrown to indicate that a method has been called by an inappropriate caller. IllegalMonitorStateExceptionThrown to indicate that a thread has attempted to wait on an object's monitor or to notify other threads waiting on an object's monitor without owning the specified monitor. IllegalStateExceptionSignals that a method has been invoked at an illegal or inappropriate time. IllegalThreadStateExceptionThrown to indicate that a thread is not in an appropriate state for the requested operation. IndexOutOfBoundsExceptionThrown to indicate that an index of some sort (such as to an array, to a string, or to a vector) is out of range. InstantiationExceptionThrown when an application tries to create an instance of a class using the
newInstancemethod in class
Class, but the specified class object cannot be instantiated.
InterruptedExceptionThrown when a thread is waiting, sleeping, or otherwise occupied, and the thread is interrupted, either before or during the activity. LayerInstantiationExceptionThrown when creating a module layer fails. NegativeArraySizeExceptionThrown if an application tries to create an array with negative size. NoSuchFieldExceptionSignals that the class doesn't have a field of a specified name. NoSuchMethodExceptionThrown when a particular method cannot be found. NullPointerExceptionThrown when an application attempts to use
nullin a case where an object is required.
NumberFormatExceptionThrown to indicate that the application has attempted to convert a string to one of the numeric types, but that the string does not have the appropriate format. ReflectiveOperationExceptionCommon superclass of exceptions thrown by reflective operations in core reflection. RuntimeException
RuntimeExceptionis the superclass of those exceptions that can be thrown during the normal operation of the Java Virtual Machine.
SecurityExceptionThrown by the security manager to indicate a security violation. StringIndexOutOfBoundsExceptionThrown by
Stringmethods to indicate that an index is either negative or greater than the size of the string.
TypeNotPresentExceptionThrown when an application tries to access a type using a string representing the type's name, but no definition for the type with the specified name can be found. UnsupportedOperationExceptionThrown to indicate that the requested operation is not supported.
Error Summary Error Description AbstractMethodErrorThrown when an application tries to call an abstract method. AssertionErrorThrown to indicate that an assertion has failed. BootstrapMethodErrorThrown to indicate that an
invokedynamicinstruction or a dynamic constant failed to resolve its bootstrap method and arguments, or for
invokedynamicinstruction the bootstrap method has failed to provide a call site with a target of the correct method type, or for a dynamic constant the bootstrap method has failed to provide a constant value of the required type.
ClassCircularityErrorThrown when the Java Virtual Machine detects a circularity in the superclass hierarchy of a class being loaded. ClassFormatErrorThrown when the Java Virtual Machine attempts to read a class file and determines that the file is malformed or otherwise cannot be interpreted as a class file. ErrorAn
Erroris a subclass of
Throwablethat indicates serious problems that a reasonable application should not try to catch.
ExceptionInInitializerErrorSignals that an unexpected exception has occurred in a static initializer. IllegalAccessErrorThrown if an application attempts to access or modify a field, or to call a method that it does not have access to. IncompatibleClassChangeErrorThrown when an incompatible class change has occurred to some class definition. InstantiationErrorThrown when an application tries to use the Java
newconstruct to instantiate an abstract class or an interface.
InternalErrorThrown to indicate some unexpected internal error has occurred in the Java Virtual Machine. LinkageErrorSubclasses of
LinkageErrorindicate that a class has some dependency on another class; however, the latter class has incompatibly changed after the compilation of the former class.
NoClassDefFoundErrorThrown if the Java Virtual Machine or a
ClassLoaderinstance tries to load in the definition of a class (as part of a normal method call or as part of creating a new instance using the
newexpression) and no definition of the class could be found.
NoSuchFieldErrorThrown if an application tries to access or modify a specified field of an object, and that object no longer has that field. NoSuchMethodErrorThrown if an application tries to call a specified method of a class (either static or instance), and that class no longer has a definition of that method. OutOfMemoryErrorThrown when the Java Virtual Machine cannot allocate an object because it is out of memory, and no more memory could be made available by the garbage collector. StackOverflowErrorThrown when a stack overflow occurs because an application recurses too deeply. ThreadDeathAn instance of
ThreadDeathis thrown in the victim thread when the (deprecated)
Thread.stop()method is invoked.
UnknownErrorThrown when an unknown but serious exception has occurred in the Java Virtual Machine. UnsatisfiedLinkErrorThrown if the Java Virtual Machine cannot find an appropriate native-language definition of a method declared
UnsupportedClassVersionErrorThrown when the Java Virtual Machine attempts to read a class file and determines that the major and minor version numbers in the file are not supported. VerifyErrorThrown when the "verifier" detects that a class file, though well formed, contains some sort of internal inconsistency or security problem. VirtualMachineErrorThrown to indicate that the Java Virtual Machine is broken or has run out of resources necessary for it to continue operating.
Annotation Types Summary Annotation Type Description DeprecatedA program element annotated
@Deprecatedis one that programmers are discouraged from using.
FunctionalInterfaceAn informative annotation type used to indicate that an interface type declaration is intended to be a functional interface as defined by the Java Language Specification. OverrideIndicates that a method declaration is intended to override a method declaration in a supertype. SafeVarargsA programmer assertion that the body of the annotated method or constructor does not perform potentially unsafe operations on its varargs parameter. SuppressWarningsIndicates that the named compiler warnings should be suppressed in the annotated element (and in all program elements contained in the annotated element).