# Package java.lang

- Interface Summary
  Interface | Description
  --- | ---
  Appendable | An object to which `char` sequences and values can be appended.
  AutoCloseable | A resource that must be closed when it is no longer needed.
  CharSequence | A `CharSequence` is a readable sequence of `char` values.
  Cloneable | A class implements the `Cloneable` interface 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 "for-each loop" statement.
  Readable | A `Readable` is a source of characters.
  Runnable | The `Runnable` interface should be implemented by any class whose instances are intended to be executed by a thread.
  Thread.UncaughtExceptionHandler | Interface for handlers invoked when a `Thread` abruptly terminates due to an uncaught exception.

- Class Summary
  Class | Description
  --- | ---
  Boolean | The Boolean class wraps a value of the primitive type `boolean` in an object.
  Byte | The `Byte` class wraps a value of primitive type `byte` in an object.
  Character | The `Character` class wraps a value of the primitive type `char` in an object.
  Character.Subset | Instances of this class represent particular subsets of the Unicode character set.
  Class<T> | Instances of the class `Class` represent classes and interfaces in a running Java application.
  ClassLoader | A class loader is an object that is responsible for loading classes.
  ClassValue<T> | Lazily associate a computed value with (potentially) every type.
  Double | The `Double` class wraps a value of the primitive type `double` in an object.
  Enum<E extends Enum<E>> | This is the common base class of all Java language enumeration types.
  Float | The `Float` class wraps a value of primitive type `float` in an object.
  Integer | The `Integer` class wraps a value of the primitive type `int` in an object.
  Long | The `Long` class wraps a value of the primitive type `long` in an object.
  Math | The class `Math` contains methods for performing basic numeric operations such as the elementary exponential, logarithm, square root, and trigonometric functions.
  Number | The abstract class `Number` is the superclass of classes `BigDecimal`, `BigInteger`, `Byte`, `Double`, `Float`, `Integer`, `Long`, and `Short`.
  Object | Class `Object` is the root of the class hierarchy.
  Short | The `Short` class wraps a value of primitive type `short` in an object.
  StackTraceElement | An element in a stack trace, as returned by `Throwable.getStackTrace()`.
  String | The `String` class represents character strings.
  StringBuffer | A thread-safe, mutable sequence of characters.
  StringBuilder | A mutable sequence of characters.
  Thread | A thread is a thread of execution in a program.
  ThreadLocal<T> | This class provides thread-local variables.
  Throwable | The `Throwable` class is the superclass of all errors and exceptions in the Java language.
  Void | The `Void` class is an uninstantiable placeholder class to hold a reference to the `Class` object representing the Java keyword void.

- Enum Summary
  Enum | Description
  --- | ---
  Thread.State | A thread state.

- Exception Summary
  Exception | Description
  --- | ---
  ArithmeticException | Thrown when an exceptional arithmetic condition has occurred.
  ArrayIndexOutOfBoundsException | Thrown to indicate that an array has been accessed with an illegal index.
  ArrayStoreException | Thrown to indicate that an attempt has been made to store the wrong type of object into an array of objects.
  ClassCastException | Thrown to indicate that the code has attempted to cast an object to a subclass of which it is not an instance.
  ClassNotFoundException | Thrown when an application tries to load in a class through its string name using: The `forName` method in class `Class`.
  CloneNotSupportedException | Thrown to indicate that the `clone` method in class `Object` has been called to clone an object, but that the object's class does not implement the `Cloneable` interface.
  Exception | The class `Exception` and its subclasses are a form of `Throwable` that indicates conditions that a reasonable application might want to catch.
  IllegalAccessException | An 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.
  IllegalArgumentException | Thrown to indicate that a method has been passed an illegal or inappropriate argument.
  IllegalStateException | Signals that a method has been invoked at an illegal or inappropriate time.
  IndexOutOfBoundsException | Thrown to indicate that an index of some sort (such as to an array, to a string, or to a vector) is out of range.
  InstantiationException | Thrown when an application tries to create an instance of a class using the `newInstance` method in class `Class`, but the specified class object cannot be instantiated.
  InterruptedException | Thrown when a thread is waiting, sleeping, or otherwise occupied, and the thread is interrupted, either before or during the activity.
  NegativeArraySizeException | Thrown if an application tries to create an array with negative size.
  NoSuchMethodException | Thrown when a particular method cannot be found.
  NullPointerException | Thrown when an application attempts to use `null` in a case where an object is required.
  NumberFormatException | Thrown 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.
  ReflectiveOperationException | Common superclass of exceptions thrown by reflective operations in core reflection.
  RuntimeException | `RuntimeException` is the superclass of those exceptions that can be thrown during the normal operation of the Java Virtual Machine.
  SecurityException | Thrown by the security manager to indicate a security violation.
  StringIndexOutOfBoundsException | Thrown by `String` methods to indicate that an index is either negative or greater than the size of the string.
  UnsupportedOperationException | Thrown to indicate that the requested operation is not supported.

- Error Summary
  Error | Description
  --- | ---
  AssertionError | Thrown to indicate that an assertion has failed.
  ClassFormatError | Thrown 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.
  Error | An `Error` is a subclass of `Throwable` that indicates serious problems that a reasonable application should not try to catch.
  IllegalAccessError | Thrown if an application attempts to access or modify a field, or to call a method that it does not have access to.
  IncompatibleClassChangeError | Thrown when an incompatible class change has occurred to some class definition.
  LinkageError | Subclasses of `LinkageError` indicate that a class has some dependency on another class; however, the latter class has incompatibly changed after the compilation of the former class.
  NoSuchMethodError | Thrown 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.
  OutOfMemoryError | Thrown 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.
  VirtualMachineError | Thrown 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
  --- | ---
  Deprecated | A program element annotated @Deprecated is one that programmers are discouraged from using, typically because it is dangerous, or because a better alternative exists.
  FunctionalInterface | An 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.
  Override | Indicates that a method declaration is intended to override a method declaration in a supertype.

Copyright © 2025 API Design. All Rights Reserved.