# Class NullPointerException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
java.lang.NullPointerException

All Implemented Interfaces:
  `Serializable`

public class NullPointerException extends RuntimeException
Thrown when an application attempts to use `null` in a case where an object is required. These include:

- Calling the instance method of a `null` object.
- Accessing or modifying the field of a `null` object.
- Taking the length of `null` as if it were an array.
- Accessing or modifying the slots of `null` as if it were an array.
- Throwing `null` as if it were a `Throwable` value.

Applications should throw instances of this class to indicate other illegal uses of the `null` object. `NullPointerException` objects may be constructed by the virtual machine as if suppression were disabled and/or the stack trace was not writable.

Since:
  1.0
See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `NullPointerException()`
  Constructs a `NullPointerException` with no detail message.
  `NullPointerException(String s)`
  Constructs a `NullPointerException` with the specified detail message.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getMessage()`
  Returns the detail message string of this throwable.

  ### Methods declared in class Throwable

  `addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### NullPointerException

    public NullPointerException()
    Constructs a `NullPointerException` with no detail message.

  - ### NullPointerException

    public NullPointerException(String s)
    Constructs a `NullPointerException` with the specified detail message.
    Parameters:
      `s` - the detail message.

- ## Method Details

  - ### getMessage

    public String getMessage()
    Returns the detail message string of this throwable.

    If a non-null message was supplied in a constructor it is returned. Otherwise, an implementation specific message or `null` is returned.

    Overrides:
      `getMessage` in class `Throwable`
    Implementation Note:
      If no explicit message was passed to the constructor, and as long as certain internal information is available, a verbose description of the null reference is returned. The internal information is not available in deserialized NullPointerExceptions.
    Returns:
      the detail message string, which may be `null`.