# Serialized Form

- ## Package com.sun.jdi

  - ### Exception Class com.sun.jdi.AbsentInformationException

    class AbsentInformationException extends Exception implements Serializable
    serialVersionUID:
      4988939309582416373L

  - ### Exception Class com.sun.jdi.ClassNotLoadedException

    class ClassNotLoadedException extends Exception implements Serializable
    serialVersionUID:
      -6242978768444298722L

    - #### Serialized Fields

      - ##### className

            String className

  - ### Exception Class com.sun.jdi.ClassNotPreparedException

    class ClassNotPreparedException extends RuntimeException implements Serializable
    serialVersionUID:
      -6120698967144079642L

  - ### Exception Class com.sun.jdi.IncompatibleThreadStateException

    class IncompatibleThreadStateException extends Exception implements Serializable
    serialVersionUID:
      6199174323414551389L

  - ### Exception Class com.sun.jdi.InconsistentDebugInfoException

    class InconsistentDebugInfoException extends RuntimeException implements Serializable
    serialVersionUID:
      7964236415376861808L

  - ### Exception Class com.sun.jdi.InternalException

    class InternalException extends RuntimeException implements Serializable
    serialVersionUID:
      -9171606393104480607L

    - #### Serialized Fields

      - ##### errorCode

            int errorCode

  - ### Exception Class com.sun.jdi.InvalidCodeIndexException

    class InvalidCodeIndexException extends RuntimeException implements Serializable
    serialVersionUID:
      7416010225133747805L

  - ### Exception Class com.sun.jdi.InvalidLineNumberException

    class InvalidLineNumberException extends RuntimeException implements Serializable
    serialVersionUID:
      4048709912372692875L

  - ### Exception Class com.sun.jdi.InvalidModuleException

    class InvalidModuleException extends RuntimeException implements Serializable
    serialVersionUID:
      7907359387320658039L

  - ### Exception Class com.sun.jdi.InvalidStackFrameException

    class InvalidStackFrameException extends RuntimeException implements Serializable
    serialVersionUID:
      -1919378296505827922L

  - ### Exception Class com.sun.jdi.InvalidTypeException

    class InvalidTypeException extends Exception implements Serializable
    serialVersionUID:
      2256667231949650806L

  - ### Exception Class com.sun.jdi.InvocationException

    class InvocationException extends Exception implements Serializable
    serialVersionUID:
      6066780907971918568L

    - #### Serialized Fields

      - ##### exception

            ObjectReference exception

  - ### Class com.sun.jdi.JDIPermission

    class JDIPermission extends BasicPermission implements Serializable
    serialVersionUID:
      -6988461416938786271L

  - ### Exception Class com.sun.jdi.NativeMethodException

    class NativeMethodException extends OpaqueFrameException implements Serializable
    serialVersionUID:
      3924951669039469992L

  - ### Exception Class com.sun.jdi.ObjectCollectedException

    class ObjectCollectedException extends RuntimeException implements Serializable
    serialVersionUID:
      -1928428056197269588L

  - ### Exception Class com.sun.jdi.OpaqueFrameException

    class OpaqueFrameException extends RuntimeException implements Serializable
    serialVersionUID:
      -6590097682282386695L

  - ### Exception Class com.sun.jdi.VMCannotBeModifiedException

    class VMCannotBeModifiedException extends UnsupportedOperationException implements Serializable
    serialVersionUID:
      -4063879815130164009L

  - ### Exception Class com.sun.jdi.VMDisconnectedException

    class VMDisconnectedException extends RuntimeException implements Serializable
    serialVersionUID:
      2892975269768351637L

  - ### Exception Class com.sun.jdi.VMMismatchException

    class VMMismatchException extends RuntimeException implements Serializable
    serialVersionUID:
      289169358790459564L

  - ### Exception Class com.sun.jdi.VMOutOfMemoryException

    class VMOutOfMemoryException extends RuntimeException implements Serializable
    serialVersionUID:
      71504228548910686L

- ## Package com.sun.jdi.connect

  - ### Exception Class com.sun.jdi.connect.IllegalConnectorArgumentsException

    class IllegalConnectorArgumentsException extends Exception implements Serializable
    serialVersionUID:
      -3042212603611350941L

    - #### Serialized Fields

      - ##### names

            List<String> names

  - ### Exception Class com.sun.jdi.connect.TransportTimeoutException

    class TransportTimeoutException extends IOException implements Serializable
    serialVersionUID:
      4107035242623365074L

  - ### Exception Class com.sun.jdi.connect.VMStartException

    class VMStartException extends Exception implements Serializable
    serialVersionUID:
      6408644824640801020L

    - #### Serialized Fields

      - ##### process

            Process process

- ## Package com.sun.jdi.connect.spi

  - ### Exception Class com.sun.jdi.connect.spi.ClosedConnectionException

    class ClosedConnectionException extends IOException implements Serializable
    serialVersionUID:
      3877032124297204774L

- ## Package com.sun.jdi.request

  - ### Exception Class com.sun.jdi.request.DuplicateRequestException

    class DuplicateRequestException extends RuntimeException implements Serializable
    serialVersionUID:
      -3719784920313411060L

  - ### Exception Class com.sun.jdi.request.InvalidRequestStateException

    class InvalidRequestStateException extends RuntimeException implements Serializable
    serialVersionUID:
      -3774632428543322148L

- ## Package com.sun.nio.sctp

  - ### Exception Class com.sun.nio.sctp.IllegalReceiveException

    class IllegalReceiveException extends IllegalStateException implements Serializable
    serialVersionUID:
      2296619040988576224L

  - ### Exception Class com.sun.nio.sctp.IllegalUnbindException

    class IllegalUnbindException extends IllegalStateException implements Serializable
    serialVersionUID:
      -310540883995532224L

  - ### Exception Class com.sun.nio.sctp.InvalidStreamException

    class InvalidStreamException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      -9172703378046665558L

- ## Package com.sun.security.auth

  - ### Class com.sun.security.auth.LdapPrincipal

    class LdapPrincipal extends Object implements Serializable
    serialVersionUID:
      6820120005580754861L

    - #### Serialized Fields

      - ##### name

            LdapName name

        The principal's name

      - ##### nameString

            String nameString

        The principal's string name

  - ### Class com.sun.security.auth.NTDomainPrincipal

    class NTDomainPrincipal extends Object implements Serializable
    serialVersionUID:
      -4408637351440771220L

    - #### Serialized Fields

      - ##### name

            String name

  - ### Class com.sun.security.auth.NTSid

    class NTSid extends Object implements Serializable
    serialVersionUID:
      4412290580770249885L

    - #### Serialized Fields

      - ##### sid

            String sid

  - ### Class com.sun.security.auth.NTSidDomainPrincipal

    class NTSidDomainPrincipal extends NTSid implements Serializable
    serialVersionUID:
      5247810785821650912L

  - ### Class com.sun.security.auth.NTSidGroupPrincipal

    class NTSidGroupPrincipal extends NTSid implements Serializable
    serialVersionUID:
      -1373347438636198229L

  - ### Class com.sun.security.auth.NTSidPrimaryGroupPrincipal

    class NTSidPrimaryGroupPrincipal extends NTSid implements Serializable
    serialVersionUID:
      8011978367305190527L

  - ### Class com.sun.security.auth.NTSidUserPrincipal

    class NTSidUserPrincipal extends NTSid implements Serializable
    serialVersionUID:
      -5573239889517749525L

  - ### Class com.sun.security.auth.NTUserPrincipal

    class NTUserPrincipal extends Object implements Serializable
    serialVersionUID:
      -8737649811939033735L

    - #### Serialized Fields

      - ##### name

            String name

  - ### Class com.sun.security.auth.UnixNumericGroupPrincipal

    class UnixNumericGroupPrincipal extends Object implements Serializable
    serialVersionUID:
      3941535899328403223L

    - #### Serialized Fields

      - ##### name

            String name

      - ##### primaryGroup

            boolean primaryGroup

  - ### Class com.sun.security.auth.UnixNumericUserPrincipal

    class UnixNumericUserPrincipal extends Object implements Serializable
    serialVersionUID:
      -4329764253802397821L

    - #### Serialized Fields

      - ##### name

            String name

  - ### Class com.sun.security.auth.UnixPrincipal

    class UnixPrincipal extends Object implements Serializable
    serialVersionUID:
      -2951667807323493631L

    - #### Serialized Fields

      - ##### name

            String name

  - ### Class com.sun.security.auth.UserPrincipal

    class UserPrincipal extends Object implements Serializable
    serialVersionUID:
      892106070870210969L

    - #### Serialized Fields

      - ##### name

            String name

        The principal's name

- ## Package com.sun.security.jgss

  - ### Class com.sun.security.jgss.InquireSecContextPermission

    class InquireSecContextPermission extends BasicPermission implements Serializable
    serialVersionUID:
      -7131173349668647297L

- ## Package com.sun.tools.attach

  - ### Exception Class com.sun.tools.attach.AgentInitializationException

    class AgentInitializationException extends Exception implements Serializable
    serialVersionUID:
      -1508756333332806353L

    - #### Serialized Fields

      - ##### returnValue

            int returnValue

  - ### Exception Class com.sun.tools.attach.AgentLoadException

    class AgentLoadException extends Exception implements Serializable
    serialVersionUID:
      688047862952114238L

  - ### Exception Class com.sun.tools.attach.AttachNotSupportedException

    class AttachNotSupportedException extends Exception implements Serializable
    serialVersionUID:
      3391824968260177264L

  - ### Exception Class com.sun.tools.attach.AttachOperationFailedException

    class AttachOperationFailedException extends IOException implements Serializable
    serialVersionUID:
      2140308168167478043L

  - ### Class com.sun.tools.attach.AttachPermission

    class AttachPermission extends BasicPermission implements Serializable
    serialVersionUID:
      -4619447669752976181L

- ## Package java.applet

  - ### Class java.applet.Applet

    class Applet extends Panel implements Serializable
    serialVersionUID:
      -5836846270535785031L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Deprecated, for removal: This API element is subject to removal in a future version.
        Read an applet from an object input stream.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        Since:
          1.4
        See Also:
          - `GraphicsEnvironment.isHeadless()`

    - #### Serialized Fields

      - ##### accessibleContext

            AccessibleContext accessibleContext

        Deprecated, for removal: This API element is subject to removal in a future version.
        The accessible context associated with this `Applet`.

  - ### Class java.applet.Applet.AccessibleApplet

    class AccessibleApplet extends Panel.AccessibleAWTPanel implements Serializable
    serialVersionUID:
      8127374778187708896L

- ## Package java.awt

  - ### Exception Class java.awt.AWTError

    class AWTError extends Error implements Serializable
    serialVersionUID:
      -1819846354050686206L

  - ### Class java.awt.AWTEvent

    class AWTEvent extends EventObject implements Serializable
    serialVersionUID:
      -1825314779160409405L

    - #### Serialized Fields

      - ##### bdata

            byte[] bdata

        The private data.

      - ##### consumed

            boolean consumed

        Controls whether or not the event is sent back down to the peer once the source has processed it - false means it's sent to the peer; true means it's not. Semantic events always have a 'true' value since they were generated by the peer in response to a low-level event.
        See Also:
          - `AWTEvent.consume()`
          - `AWTEvent.isConsumed()`

      - ##### id

            int id

        The event's id.
        See Also:
          - `AWTEvent.getID()`
          - `AWTEvent(java.lang.Object, int)`

  - ### Exception Class java.awt.AWTException

    class AWTException extends Exception implements Serializable
    serialVersionUID:
      -1900414231151323879L

  - ### Class java.awt.AWTKeyStroke

    class AWTKeyStroke extends Object implements Serializable
    serialVersionUID:
      -6430539691155161871L

    - #### Serialization Methods

      - ##### readResolve

        protected Object readResolve() throws ObjectStreamException
        Returns a cached instance of `AWTKeyStroke` (or a subclass of `AWTKeyStroke`) which is equal to this instance.
        Throws:
          `ObjectStreamException` - if a serialization problem occurs

    - #### Serialized Fields

      - ##### keyChar

            char keyChar

        The character value for a keyboard key.

      - ##### keyCode

            int keyCode

        The key code for this `AWTKeyStroke`.

      - ##### modifiers

            int modifiers

        The bitwise-ored combination of any modifiers.

      - ##### onKeyRelease

            boolean onKeyRelease

        `true` if this `AWTKeyStroke` corresponds to a key release; `false` otherwise.

  - ### Class java.awt.AWTPermission

    class AWTPermission extends BasicPermission implements Serializable
    serialVersionUID:
      8890392402588814465L

  - ### Class java.awt.BorderLayout

    class BorderLayout extends Object implements Serializable
    serialVersionUID:
      -8658291919501921765L

    - #### Serialized Fields

      - ##### center

            Component center

        Constant to specify components location to be the center portion of the border layout.
        See Also:
          - `BorderLayout.getChild(String, boolean)`
          - `BorderLayout.addLayoutComponent(java.awt.Component, java.lang.Object)`
          - `BorderLayout.getLayoutAlignmentX(java.awt.Container)`
          - `BorderLayout.getLayoutAlignmentY(java.awt.Container)`
          - `BorderLayout.removeLayoutComponent(java.awt.Component)`

      - ##### east

            Component east

        Constant to specify components location to be the east portion of the border layout.
        See Also:
          - `BorderLayout.getChild(String, boolean)`
          - `BorderLayout.addLayoutComponent(java.awt.Component, java.lang.Object)`
          - `BorderLayout.getLayoutAlignmentX(java.awt.Container)`
          - `BorderLayout.getLayoutAlignmentY(java.awt.Container)`
          - `BorderLayout.removeLayoutComponent(java.awt.Component)`

      - ##### firstItem

            Component firstItem

        A relative positioning constant, that can be used instead of north, south, east, west or center. Please read Description for firstLine.

      - ##### firstLine

            Component firstLine

        A relative positioning constant, that can be used instead of north, south, east, west or center. mixing the two types of constants can lead to unpredictable results. If you use both types, the relative constants will take precedence. For example, if you add components using both the `NORTH` and `BEFORE_FIRST_LINE` constants in a container whose orientation is `LEFT_TO_RIGHT`, only the `BEFORE_FIRST_LINE` will be laid out. This will be the same for lastLine, firstItem, lastItem.

      - ##### hgap

            int hgap

        Constructs a border layout with the horizontal gaps between components. The horizontal gap is specified by `hgap`.
        See Also:
          - `BorderLayout.getHgap()`
          - `BorderLayout.setHgap(int)`

      - ##### lastItem

            Component lastItem

        A relative positioning constant, that can be used instead of north, south, east, west or center. Please read Description for firstLine.

      - ##### lastLine

            Component lastLine

        A relative positioning constant, that can be used instead of north, south, east, west or center. Please read Description for firstLine.

      - ##### north

            Component north

        Constant to specify components location to be the north portion of the border layout.
        See Also:
          - `BorderLayout.getChild(String, boolean)`
          - `BorderLayout.addLayoutComponent(java.awt.Component, java.lang.Object)`
          - `BorderLayout.getLayoutAlignmentX(java.awt.Container)`
          - `BorderLayout.getLayoutAlignmentY(java.awt.Container)`
          - `BorderLayout.removeLayoutComponent(java.awt.Component)`

      - ##### south

            Component south

        Constant to specify components location to be the south portion of the border layout.
        See Also:
          - `BorderLayout.getChild(String, boolean)`
          - `BorderLayout.addLayoutComponent(java.awt.Component, java.lang.Object)`
          - `BorderLayout.getLayoutAlignmentX(java.awt.Container)`
          - `BorderLayout.getLayoutAlignmentY(java.awt.Container)`
          - `BorderLayout.removeLayoutComponent(java.awt.Component)`

      - ##### vgap

            int vgap

        Constructs a border layout with the vertical gaps between components. The vertical gap is specified by `vgap`.
        See Also:
          - `BorderLayout.getVgap()`
          - `BorderLayout.setVgap(int)`

      - ##### west

            Component west

        Constant to specify components location to be the west portion of the border layout.
        See Also:
          - `BorderLayout.getChild(String, boolean)`
          - `BorderLayout.addLayoutComponent(java.awt.Component, java.lang.Object)`
          - `BorderLayout.getLayoutAlignmentX(java.awt.Container)`
          - `BorderLayout.getLayoutAlignmentY(java.awt.Container)`
          - `BorderLayout.removeLayoutComponent(java.awt.Component)`

  - ### Class java.awt.Button

    class Button extends Component implements Serializable
    serialVersionUID:
      -8774683716313001058L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Reads the `ObjectInputStream` and if it isn't `null` adds a listener to receive action events fired by the button. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `Button.removeActionListener(ActionListener)`
          - `Button.addActionListener(ActionListener)`
          - `GraphicsEnvironment.isHeadless()`
          - `Button.writeObject(ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream. Writes a list of serializable `ActionListeners` as optional data. The non-serializable `ActionListeners` are detected and no attempt is made to serialize them.
        Serial Data:
          `null` terminated sequence of 0 or more pairs: the pair consists of a `String` and an `Object`; the `String` indicates the type of object and is one of the following: `actionListenerK` indicating an `ActionListener` object
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`
          - `Component.actionListenerK`
          - `Button.readObject(ObjectInputStream)`

    - #### Serialized Fields

      - ##### actionCommand

            String actionCommand

        The action to be performed once a button has been pressed. This value may be null.
        See Also:
          - `Button.getActionCommand()`
          - `Button.setActionCommand(String)`

      - ##### buttonSerializedDataVersion

            int buttonSerializedDataVersion

        Serialized data version.

      - ##### label

            String label

        The button's label. This value may be null.
        See Also:
          - `Button.getLabel()`
          - `Button.setLabel(String)`

  - ### Class java.awt.Button.AccessibleAWTButton

    class AccessibleAWTButton extends Component.AccessibleAWTComponent implements Serializable
    serialVersionUID:
      -5932203980244017102L

  - ### Class java.awt.Canvas

    class Canvas extends Component implements Serializable
    serialVersionUID:
      -2284879212465893870L

  - ### Class java.awt.Canvas.AccessibleAWTCanvas

    class AccessibleAWTCanvas extends Component.AccessibleAWTComponent implements Serializable
    serialVersionUID:
      -6325592262103146699L

  - ### Class java.awt.CardLayout

    class CardLayout extends Object implements Serializable
    serialVersionUID:
      -4328196481005934313L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reads serializable fields from stream.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes serializable fields to stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### currentCard

            int currentCard

        the index of Component currently displayed

      - ##### hgap

            int hgap

        the horizontal Layout gap

      - ##### tab

            Hashtable tab

        deprecated, for forward compatibility only

      - ##### vector

            Vector vector

        the pairs of components and their names

      - ##### vgap

            int vgap

        the vertical Layout gap

  - ### Class java.awt.Checkbox

    class Checkbox extends Component implements Serializable
    serialVersionUID:
      7270714317450821763L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Reads the `ObjectInputStream` and if it isn't `null` adds a listener to receive item events fired by the `Checkbox`. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `Checkbox.removeItemListener(ItemListener)`
          - `Checkbox.addItemListener(ItemListener)`
          - `GraphicsEnvironment.isHeadless()`
          - `Checkbox.writeObject(ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream. Writes a list of serializable `ItemListeners` as optional data. The non-serializable `ItemListeners` are detected and no attempt is made to serialize them.
        Serial Data:
          `null` terminated sequence of 0 or more pairs; the pair consists of a `String` and an `Object`; the `String` indicates the type of object and is one of the following: `itemListenerK` indicating an `ItemListener` object
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`
          - `Component.itemListenerK`
          - `Checkbox.readObject(ObjectInputStream)`

    - #### Serialized Fields

      - ##### checkboxSerializedDataVersion

            int checkboxSerializedDataVersion

        Serialized data version.

      - ##### group

            CheckboxGroup group

        The check box group. This field can be null indicating that the checkbox is not a group checkbox.
        See Also:
          - `Checkbox.getCheckboxGroup()`
          - `Checkbox.setCheckboxGroup(CheckboxGroup)`

      - ##### label

            String label

        The label of the Checkbox. This field can be null.
        See Also:
          - `Checkbox.getLabel()`
          - `Checkbox.setLabel(String)`

      - ##### state

            boolean state

        The state of the `Checkbox`.
        See Also:
          - `Checkbox.getState()`
          - `Checkbox.setState(boolean)`

  - ### Class java.awt.Checkbox.AccessibleAWTCheckbox

    class AccessibleAWTCheckbox extends Component.AccessibleAWTComponent implements Serializable
    serialVersionUID:
      7881579233144754107L

  - ### Class java.awt.CheckboxGroup

    class CheckboxGroup extends Object implements Serializable
    serialVersionUID:
      3729780091441768983L

    - #### Serialized Fields

      - ##### selectedCheckbox

            Checkbox selectedCheckbox

        The current choice.
        See Also:
          - `CheckboxGroup.getCurrent()`
          - `CheckboxGroup.setCurrent(Checkbox)`

  - ### Class java.awt.CheckboxMenuItem

    class CheckboxMenuItem extends MenuItem implements Serializable
    serialVersionUID:
      6190621106981774043L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reads the `ObjectInputStream` and if it isn't `null` adds a listener to receive item events fired by the `Checkbox` menu item. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
        See Also:
          - `MenuItem.removeActionListener(ActionListener)`
          - `MenuItem.addActionListener(ActionListener)`
          - `CheckboxMenuItem.writeObject(ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream. Writes a list of serializable `ItemListeners` as optional data. The non-serializable `ItemListeners` are detected and no attempt is made to serialize them.
        Serial Data:
          `null` terminated sequence of 0 or more pairs; the pair consists of a `String` and an `Object`; the `String` indicates the type of object and is one of the following: `itemListenerK` indicating an `ItemListener` object
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`
          - `Component.itemListenerK`
          - `CheckboxMenuItem.readObject(ObjectInputStream)`

    - #### Serialized Fields

      - ##### checkboxMenuItemSerializedDataVersion

            int checkboxMenuItemSerializedDataVersion

        Serialized data version.

      - ##### state

            boolean state

        The state of a checkbox menu item
        See Also:
          - `CheckboxMenuItem.getState()`
          - `CheckboxMenuItem.setState(boolean)`

  - ### Class java.awt.CheckboxMenuItem.AccessibleAWTCheckboxMenuItem

    class AccessibleAWTCheckboxMenuItem extends MenuItem.AccessibleAWTMenuItem implements Serializable
    serialVersionUID:
      -1122642964303476L

  - ### Class java.awt.Choice

    class Choice extends Component implements Serializable
    serialVersionUID:
      -4075310674757313071L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Reads the `ObjectInputStream` and if it isn't `null` adds a listener to receive item events fired by the `Choice` item. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `Choice.removeItemListener(ItemListener)`
          - `Choice.addItemListener(ItemListener)`
          - `GraphicsEnvironment.isHeadless()`
          - `Choice.writeObject(ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream. Writes a list of serializable `ItemListeners` as optional data. The non-serializable `ItemListeners` are detected and no attempt is made to serialize them.
        Serial Data:
          `null` terminated sequence of 0 or more pairs; the pair consists of a `String` and an `Object`; the `String` indicates the type of object and is one of the following: `itemListenerK` indicating an `ItemListener` object
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`
          - `Component.itemListenerK`
          - `Choice.readObject(ObjectInputStream)`

    - #### Serialized Fields

      - ##### choiceSerializedDataVersion

            int choiceSerializedDataVersion

        Serialized data version.

      - ##### pItems

            Vector<String> pItems

        The items for the `Choice`. This can be a `null` value.
        See Also:
          - `Choice.add(String)`
          - `Choice.addItem(String)`
          - `Choice.getItem(int)`
          - `Choice.getItemCount()`
          - `Choice.insert(String, int)`
          - `Choice.remove(String)`

      - ##### selectedIndex

            int selectedIndex

        The index of the current choice for this `Choice` or -1 if nothing is selected.
        See Also:
          - `Choice.getSelectedItem()`
          - `Choice.select(int)`

  - ### Class java.awt.Choice.AccessibleAWTChoice

    class AccessibleAWTChoice extends Component.AccessibleAWTComponent implements Serializable
    serialVersionUID:
      7175603582428509322L

  - ### Class java.awt.Color

    class Color extends Object implements Serializable
    serialVersionUID:
      118526816881161077L

    - #### Serialized Fields

      - ##### cs

            ColorSpace cs

        The `ColorSpace`. If `null`, then it's default is sRGB.
        See Also:
          - `Color.getColor(java.lang.String)`
          - `Color.getColorSpace()`
          - `Color.getColorComponents(float[])`

      - ##### falpha

            float falpha

        The alpha value as a `float` component. If `frgbvalue` is `null`, this is not valid data, so compute from the `int` color value.
        See Also:
          - `Color.getRGBComponents(float[])`
          - `Color.getComponents(float[])`

      - ##### frgbvalue

            float[] frgbvalue

        The color value in the default sRGB `ColorSpace` as `float` components (no alpha). If `null` after object construction, this must be an sRGB color constructed with 8-bit precision, so compute from the `int` color value.
        See Also:
          - `Color.getRGBColorComponents(float[])`
          - `Color.getRGBComponents(float[])`

      - ##### fvalue

            float[] fvalue

        The color value in the native `ColorSpace` as `float` components (no alpha). If `null` after object construction, this must be an sRGB color constructed with 8-bit precision, so compute from the `int` color value.
        See Also:
          - `Color.getRGBColorComponents(float[])`
          - `Color.getRGBComponents(float[])`

      - ##### value

            int value

        The color value.
        See Also:
          - `Color.getRGB()`

  - ### Class java.awt.Component

    class Component extends Object implements Serializable
    serialVersionUID:
      -7644114512714619750L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reads the `ObjectInputStream` and if it isn't `null` adds a listener to receive a variety of events fired by the component. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
        See Also:
          - `Component.writeObject(ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream. Writes a variety of serializable listeners as optional data. The non-serializable listeners are detected and no attempt is made to serialize them.
        Serial Data:
          `null` terminated sequence of 0 or more pairs; the pair consists of a `String` and an `Object`; the `String` indicates the type of object and is one of the following (as of 1.4): `componentListenerK` indicating an `ComponentListener` object; `focusListenerK` indicating an `FocusListener` object; `keyListenerK` indicating an `KeyListener` object; `mouseListenerK` indicating an `MouseListener` object; `mouseMotionListenerK` indicating an `MouseMotionListener` object; `inputMethodListenerK` indicating an `InputMethodListener` object; `hierarchyListenerK` indicating an `HierarchyListener` object; `hierarchyBoundsListenerK` indicating an `HierarchyBoundsListener` object; `mouseWheelListenerK` indicating an `MouseWheelListener` object, an optional `ComponentOrientation` (after `inputMethodListener`, as of 1.2)
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(java.io.ObjectOutputStream, java.lang.String, java.util.EventListener)`
          - `Component.componentListenerK`
          - `Component.focusListenerK`
          - `Component.keyListenerK`
          - `Component.mouseListenerK`
          - `Component.mouseMotionListenerK`
          - `Component.inputMethodListenerK`
          - `Component.hierarchyListenerK`
          - `Component.hierarchyBoundsListenerK`
          - `Component.mouseWheelListenerK`
          - `Component.readObject(ObjectInputStream)`

    - #### Serialized Fields

      - ##### accessibleContext

            AccessibleContext accessibleContext

        The `AccessibleContext` associated with this `Component`.

      - ##### autoFocusTransferOnDisposal

            boolean autoFocusTransferOnDisposal

        Used to disallow auto-focus-transfer on disposal of the focus owner in the process of disposing its parent container.

      - ##### background

            Color background

        The background color for this component. `background` can be `null`.
        See Also:
          - `Component.getBackground()`
          - `Component.setBackground(java.awt.Color)`

      - ##### boundsOp

            int boundsOp

        Pseudoparameter for direct Geometry API (setLocation, setBounds setSize to signal setBounds what's changing. Should be used under TreeLock. This is only needed due to the inability to change the cross-calling order of public and deprecated methods.

      - ##### changeSupport

            PropertyChangeSupport changeSupport

        If any `PropertyChangeListeners` have been registered, the `changeSupport` field describes them.
        Since:
          1.2
        See Also:
          - `Component.addPropertyChangeListener(java.beans.PropertyChangeListener)`
          - `Component.removePropertyChangeListener(java.beans.PropertyChangeListener)`
          - `Component.firePropertyChange(java.lang.String, java.lang.Object, java.lang.Object)`

      - ##### componentSerializedDataVersion

            int componentSerializedDataVersion

        Component Serialized Data Version.

      - ##### cursor

            Cursor cursor

        The cursor displayed when pointer is over this component. This value can be `null`.
        See Also:
          - `Component.getCursor()`
          - `Component.setCursor(java.awt.Cursor)`

      - ##### dropTarget

            DropTarget dropTarget

        The `DropTarget` associated with this component.
        Since:
          1.2
        See Also:
          - `Component.setDropTarget(java.awt.dnd.DropTarget)`
          - `Component.getDropTarget()`

      - ##### enabled

            boolean enabled

        True when the object is enabled. An object that is not enabled does not interact with the user.
        See Also:
          - `Component.isEnabled()`
          - `Component.setEnabled(boolean)`

      - ##### eventMask

            long eventMask

        The `eventMask` is ONLY set by subclasses via `enableEvents`. The mask should NOT be set when listeners are registered so that we can distinguish the difference between when listeners request events and subclasses request them. One bit is used to indicate whether input methods are enabled; this bit is set by `enableInputMethods` and is on by default.
        See Also:
          - `Component.enableInputMethods(boolean)`
          - `AWTEvent`

      - ##### focusable

            boolean focusable

        Indicates whether this Component can be focused.
        Since:
          1.4
        See Also:
          - `Component.setFocusable(boolean)`
          - `Component.isFocusable()`

      - ##### focusTraversalKeys

            Set<AWTKeyStroke>[] focusTraversalKeys

        The focus traversal keys. These keys will generate focus traversal behavior for Components for which focus traversal keys are enabled. If a value of null is specified for a traversal key, this Component inherits that traversal key from its parent. If all ancestors of this Component have null specified for that traversal key, then the current KeyboardFocusManager's default traversal key is used.
        Since:
          1.4
        See Also:
          - `Component.setFocusTraversalKeys(int, java.util.Set<? extends java.awt.AWTKeyStroke>)`
          - `Component.getFocusTraversalKeys(int)`

      - ##### focusTraversalKeysEnabled

            boolean focusTraversalKeysEnabled

        Indicates whether focus traversal keys are enabled for this Component. Components for which focus traversal keys are disabled receive key events for focus traversal keys. Components for which focus traversal keys are enabled do not see these events; instead, the events are automatically converted to traversal operations.
        Since:
          1.4
        See Also:
          - `Component.setFocusTraversalKeysEnabled(boolean)`
          - `Component.getFocusTraversalKeysEnabled()`

      - ##### font

            Font font

        The font used by this component. The `font` can be `null`.
        See Also:
          - `Component.getFont()`
          - `Component.setFont(java.awt.Font)`

      - ##### foreground

            Color foreground

        The foreground color for this component. `foreground` can be `null`.
        See Also:
          - `Component.getForeground()`
          - `Component.setForeground(java.awt.Color)`

      - ##### height

            int height

        The height of the component.
        See Also:
          - `Component.getSize()`

      - ##### ignoreRepaint

            boolean ignoreRepaint

        True when the object should ignore all repaint events.
        Since:
          1.4
        See Also:
          - `Component.setIgnoreRepaint(boolean)`
          - `Component.getIgnoreRepaint()`

      - ##### isFocusTraversableOverridden

            int isFocusTraversableOverridden

        Tracks whether this Component is relying on default focus traversability.
        Since:
          1.4

      - ##### isPacked

            boolean isPacked

        Whether the component is packed or not;

      - ##### locale

            Locale locale

        The locale for the component.
        See Also:
          - `Component.getLocale()`
          - `Component.setLocale(java.util.Locale)`

      - ##### maxSize

            Dimension maxSize

        Maximum size

      - ##### maxSizeSet

            boolean maxSizeSet

        Whether or not setMaximumSize has been invoked with a non-null value.

      - ##### minSize

            Dimension minSize

        Minimum size. (This field perhaps should have been transient).

      - ##### minSizeSet

            boolean minSizeSet

        Whether or not setMinimumSize has been invoked with a non-null value.

      - ##### name

            String name

        A component's name. This field can be `null`.
        See Also:
          - `Component.getName()`
          - `Component.setName(String)`

      - ##### nameExplicitlySet

            boolean nameExplicitlySet

        A bool to determine whether the name has been set explicitly. `nameExplicitlySet` will be false if the name has not been set and true if it has.
        See Also:
          - `Component.getName()`
          - `Component.setName(String)`

      - ##### newEventsOnly

            boolean newEventsOnly

        `newEventsOnly` will be true if the event is one of the event types enabled for the component. It will then allow for normal processing to continue. If it is false the event is passed to the component's parent and up the ancestor tree until the event has been consumed.
        See Also:
          - `Component.dispatchEvent(java.awt.AWTEvent)`

      - ##### peerFont

            Font peerFont

        The font which the peer is currently using. (`null` if no peer exists.)

      - ##### popups

            Vector<PopupMenu> popups

        See Also:
          - `Component.add(java.awt.PopupMenu)`

      - ##### prefSize

            Dimension prefSize

        Preferred size. (This field perhaps should have been transient).

      - ##### prefSizeSet

            boolean prefSizeSet

        Whether or not setPreferredSize has been invoked with a non-null value.

      - ##### valid

            boolean valid

        True when the object is valid. An invalid object needs to be laid out. This flag is set to false when the object size is changed.
        See Also:
          - `Component.isValid()`
          - `Component.validate()`
          - `Component.invalidate()`

      - ##### visible

            boolean visible

        True when the object is visible. An object that is not visible is not drawn on the screen.
        See Also:
          - `Component.isVisible()`
          - `Component.setVisible(boolean)`

      - ##### width

            int width

        The width of the component.
        See Also:
          - `Component.getSize()`

      - ##### x

            int x

        The x position of the component in the parent's coordinate system.
        See Also:
          - `Component.getLocation()`

      - ##### y

            int y

        The y position of the component in the parent's coordinate system.
        See Also:
          - `Component.getLocation()`

  - ### Class java.awt.Component.AccessibleAWTComponent

    class AccessibleAWTComponent extends AccessibleContext implements Serializable
    serialVersionUID:
      642321655757800191L

    - #### Serialized Fields

      - ##### accessibleAWTComponentHandler

            ComponentListener accessibleAWTComponentHandler

        A component listener to track show/hide/resize events and convert them to PropertyChange events.

      - ##### accessibleAWTFocusHandler

            FocusListener accessibleAWTFocusHandler

        A listener to track focus events and convert them to PropertyChange events.

  - ### Class java.awt.Component.AccessibleAWTComponent.AccessibleAWTComponentHandler

    class AccessibleAWTComponentHandler extends Object implements Serializable
    serialVersionUID:
      -1009684107426231869L

  - ### Class java.awt.Component.AccessibleAWTComponent.AccessibleAWTFocusHandler

    class AccessibleAWTFocusHandler extends Object implements Serializable
    serialVersionUID:
      3150908257351582233L

  - ### Class java.awt.ComponentOrientation

    class ComponentOrientation extends Object implements Serializable
    serialVersionUID:
      -4113291392143563828L

    - #### Serialized Fields

      - ##### orientation

            int orientation

        The bitwise-ored combination of flags.

  - ### Class java.awt.Container

    class Container extends Component implements Serializable
    serialVersionUID:
      4613797578919906343L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Deserializes this `Container` from the specified `ObjectInputStream`.
        - Reads default serializable fields from the stream.
        - Reads a list of serializable ContainerListener(s) as optional data. If the list is null, no Listeners are installed.
        - Reads this Container's FocusTraversalPolicy, which may be null, as optional data.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
        See Also:
          - `Container.addContainerListener(java.awt.event.ContainerListener)`
          - `Container.writeObject(ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Serializes this `Container` to the specified `ObjectOutputStream`.
        - Writes default serializable fields to the stream.
        - Writes a list of serializable ContainerListener(s) as optional data. The non-serializable ContainerListener(s) are detected and no attempt is made to serialize them.
        - Write this Container's FocusTraversalPolicy if and only if it is Serializable; otherwise, `null` is written.
        Serial Data:
          `null` terminated sequence of 0 or more pairs; the pair consists of a `String` and `Object`; the `String` indicates the type of object and is one of the following: `containerListenerK` indicating an `ContainerListener` object; the `Container`'s `FocusTraversalPolicy`, or `null`
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(java.io.ObjectOutputStream, java.lang.String, java.util.EventListener)`
          - `Component.containerListenerK`
          - `Container.readObject(ObjectInputStream)`

    - #### Serialized Fields

      - ##### component

            Component[] component

        The components in this container.

      - ##### containerSerializedDataVersion

            int containerSerializedDataVersion

        Container Serial Data Version.

      - ##### dispatcher

            java.awt.LightweightDispatcher dispatcher

        Event router for lightweight components. If this container is native, this dispatcher takes care of forwarding and retargeting the events to lightweight components contained (if any).

      - ##### focusCycleRoot

            boolean focusCycleRoot

        Indicates whether this Component is the root of a focus traversal cycle. Once focus enters a traversal cycle, typically it cannot leave it via focus traversal unless one of the up- or down-cycle keys is pressed. Normal traversal is limited to this Container, and all of this Container's descendants that are not descendants of inferior focus cycle roots.

      - ##### focusTraversalPolicyProvider

            boolean focusTraversalPolicyProvider

        Stores the value of focusTraversalPolicyProvider property.

      - ##### layoutMgr

            LayoutManager layoutMgr

        Layout manager for this container.

      - ##### maxSize

            Dimension maxSize

        Maximum size of this Container.

      - ##### ncomponents

            int ncomponents

        The number of components in this container. This value can be null.

  - ### Class java.awt.Container.AccessibleAWTContainer

    class AccessibleAWTContainer extends Component.AccessibleAWTComponent implements Serializable
    serialVersionUID:
      5081320404842566097L

    - #### Serialized Fields

      - ##### accessibleContainerHandler

            ContainerListener accessibleContainerHandler

        The handler to fire `PropertyChange` when children are added or removed

  - ### Class java.awt.Container.AccessibleAWTContainer.AccessibleContainerHandler

    class AccessibleContainerHandler extends Object implements Serializable
    serialVersionUID:
      -480855353991814677L

  - ### Class java.awt.ContainerOrderFocusTraversalPolicy

    class ContainerOrderFocusTraversalPolicy extends FocusTraversalPolicy implements Serializable
    serialVersionUID:
      486933713763926351L

    - #### Serialized Fields

      - ##### BACKWARD_TRAVERSAL

            int BACKWARD_TRAVERSAL

        This constant is used when the backward focus traversal order is active.

      - ##### FORWARD_TRAVERSAL

            int FORWARD_TRAVERSAL

        This constant is used when the forward focus traversal order is active.

      - ##### implicitDownCycleTraversal

            boolean implicitDownCycleTraversal

        Whether this `ContainerOrderFocusTraversalPolicy` transfers focus down-cycle implicitly.

  - ### Class java.awt.Cursor

    class Cursor extends Object implements Serializable
    serialVersionUID:
      8028237497568985504L

    - #### Serialized Fields

      - ##### name

            String name

        The user-visible name of the cursor.
        See Also:
          - `Cursor.getName()`

      - ##### type

            int type

        The chosen cursor type initially set to the `DEFAULT_CURSOR`.
        See Also:
          - `Cursor.getType()`

  - ### Class java.awt.DefaultFocusTraversalPolicy

    class DefaultFocusTraversalPolicy extends ContainerOrderFocusTraversalPolicy implements Serializable
    serialVersionUID:
      8876966522510157497L

  - ### Class java.awt.Dialog

    class Dialog extends Window implements Serializable
    serialVersionUID:
      5920926903803293709L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Reads serializable fields from stream.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`

    - #### Serialized Fields

      - ##### modal

            boolean modal

        True if this dialog is modal, false is the dialog is modeless. A modal dialog blocks user input to some application top-level windows. This field is kept only for backwards compatibility. Use the `ModalityType` enum instead.
        See Also:
          - `Dialog.isModal()`
          - `Dialog.setModal(boolean)`
          - `Dialog.getModalityType()`
          - `Dialog.setModalityType(java.awt.Dialog.ModalityType)`
          - `Dialog.ModalityType`
          - `Dialog.ModalityType.MODELESS`
          - `Dialog.DEFAULT_MODALITY_TYPE`

      - ##### modalityType

            Dialog.ModalityType modalityType

        Modality type of this dialog. If the dialog's modality type is not `ModalityType.MODELESS`, it blocks all user input to some application top-level windows.
        Since:
          1.6
        See Also:
          - `Dialog.ModalityType`
          - `Dialog.getModalityType()`
          - `Dialog.setModalityType(java.awt.Dialog.ModalityType)`

      - ##### resizable

            boolean resizable

        A dialog's resizable property. Will be true if the Dialog is to be resizable, otherwise it will be false.
        See Also:
          - `Dialog.setResizable(boolean)`

      - ##### title

            String title

        Specifies the title of the Dialog. This field can be null.
        See Also:
          - `Dialog.getTitle()`
          - `Dialog.setTitle(String)`

      - ##### undecorated

            boolean undecorated

        This field indicates whether the dialog is undecorated. This property can only be changed while the dialog is not displayable. `undecorated` will be true if the dialog is undecorated, otherwise it will be false.
        Since:
          1.4
        See Also:
          - `Dialog.setUndecorated(boolean)`
          - `Dialog.isUndecorated()`
          - `Component.isDisplayable()`

  - ### Class java.awt.Dialog.AccessibleAWTDialog

    class AccessibleAWTDialog extends Window.AccessibleAWTWindow implements Serializable
    serialVersionUID:
      4837230331833941201L

  - ### Class java.awt.Dimension

    class Dimension extends Dimension2D implements Serializable
    serialVersionUID:
      4723952579491349524L

    - #### Serialized Fields

      - ##### height

            int height

        The height dimension; negative values can be used.
        Since:
          1.0
        See Also:
          - `Dimension.getSize()`
          - `Dimension.setSize(double, double)`

      - ##### width

            int width

        The width dimension; negative values can be used.
        Since:
          1.0
        See Also:
          - `Dimension.getSize()`
          - `Dimension.setSize(double, double)`

  - ### Class java.awt.Event

    class Event extends Object implements Serializable
    serialVersionUID:
      5488922509400504703L

    - #### Serialized Fields

      - ##### arg

            Object arg

        Deprecated.
        An arbitrary argument of the event. The value of this field depends on the type of event. `arg` has been replaced by event specific property.

      - ##### clickCount

            int clickCount

        Deprecated.
        For `MOUSE_DOWN` events, this field indicates the number of consecutive clicks. For other events, its value is `0`. This field has been replaced by MouseEvent.getClickCount().
        See Also:
          - `MouseEvent.getClickCount()`

      - ##### consumed

            boolean consumed

        Deprecated.
        This field controls whether or not the event is sent back down to the peer once the target has processed it - false means it's sent to the peer, true means it's not.
        See Also:
          - `Event.isConsumed()`

      - ##### evt

            Event evt

        Deprecated.
        The next event. This field is set when putting events into a linked list. This has been replaced by EventQueue.
        See Also:
          - `EventQueue`

      - ##### id

            int id

        Deprecated.
        Indicates which type of event the event is, and which other `Event` variables are relevant for the event. This has been replaced by AWTEvent.getID()
        See Also:
          - `AWTEvent.getID()`

      - ##### key

            int key

        Deprecated.
        The key code of the key that was pressed in a keyboard event. This has been replaced by KeyEvent.getKeyCode()
        See Also:
          - `KeyEvent.getKeyCode()`

      - ##### modifiers

            int modifiers

        Deprecated.
        The state of the modifier keys. This is replaced with InputEvent.getModifiers() In java 1.1 MouseEvent and KeyEvent are subclasses of InputEvent.
        See Also:
          - `InputEvent.getModifiers()`

      - ##### target

            Object target

        Deprecated.
        The target component. This indicates the component over which the event occurred or with which the event is associated. This object has been replaced by AWTEvent.getSource()
        See Also:
          - `EventObject.getSource()`

      - ##### when

            long when

        Deprecated.
        The time stamp. Replaced by InputEvent.getWhen().
        See Also:
          - `InputEvent.getWhen()`

      - ##### x

            int x

        Deprecated.
        The x coordinate of the event. Replaced by MouseEvent.getX()
        See Also:
          - `MouseEvent.getX()`

      - ##### y

            int y

        Deprecated.
        The y coordinate of the event. Replaced by MouseEvent.getY()
        See Also:
          - `MouseEvent.getY()`

  - ### Class java.awt.FileDialog

    class FileDialog extends Dialog implements Serializable
    serialVersionUID:
      5035145889651310422L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reads the `ObjectInputStream` and performs a backwards compatibility check by converting either a `dir` or a `file` equal to an empty string to `null`.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### dir

            String dir

        The string specifying the directory to display in the file dialog. This variable may be `null`.
        See Also:
          - `FileDialog.getDirectory()`
          - `FileDialog.setDirectory(java.lang.String)`

      - ##### file

            String file

        The string specifying the initial value of the filename text field in the file dialog. This variable may be `null`.
        See Also:
          - `FileDialog.getFile()`
          - `FileDialog.setFile(java.lang.String)`

      - ##### files

            File[] files

        Contains the File instances for all the files that the user selects.
        Since:
          1.7
        See Also:
          - `FileDialog.getFiles()`

      - ##### filter

            FilenameFilter filter

        The filter used as the file dialog's filename filter. The file dialog will only be displaying files whose names are accepted by this filter. This variable may be `null`.
        See Also:
          - `FileDialog.getFilenameFilter()`
          - `FileDialog.setFilenameFilter(java.io.FilenameFilter)`
          - `FilenameFilter`

      - ##### mode

            int mode

        There are two `FileDialog` modes: `LOAD` and `SAVE`. This integer will represent one or the other. If the mode is not specified it will default to `LOAD`.
        See Also:
          - `FileDialog.getMode()`
          - `FileDialog.setMode(int)`
          - `FileDialog.LOAD`
          - `FileDialog.SAVE`

      - ##### multipleMode

            boolean multipleMode

        Represents whether the file dialog allows the multiple file selection.
        Since:
          1.7
        See Also:
          - `FileDialog.setMultipleMode(boolean)`
          - `FileDialog.isMultipleMode()`

  - ### Class java.awt.FlowLayout

    class FlowLayout extends Object implements Serializable
    serialVersionUID:
      -7262534875583282631L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
        Reads this object out of a serialization stream, handling objects written by older versions of the class that didn't contain all of the fields we use now..
        Parameters:
          `stream` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### align

            int align

        `align` is the property that determines how each row distributes empty space. It can be one of the following values:
        - `LEFT`
        - `RIGHT`
        - `CENTER`
        See Also:
          - `FlowLayout.getAlignment()`
          - `FlowLayout.setAlignment(int)`

      - ##### alignOnBaseline

            boolean alignOnBaseline

        If true, components will be aligned on their baseline.

      - ##### hgap

            int hgap

        The flow layout manager allows a separation of components with gaps. The horizontal gap will specify the space between components and between the components and the borders of the `Container`.
        See Also:
          - `FlowLayout.getHgap()`
          - `FlowLayout.setHgap(int)`

      - ##### newAlign

            int newAlign

        `newAlign` is the property that determines how each row distributes empty space for the Java 2 platform, v1.2 and greater. It can be one of the following three values:
        - `LEFT`
        - `RIGHT`
        - `CENTER`
        - `LEADING`
        - `TRAILING`
        Since:
          1.2
        See Also:
          - `FlowLayout.getAlignment()`
          - `FlowLayout.setAlignment(int)`

      - ##### serialVersionOnStream

            int serialVersionOnStream

        This represent the `currentSerialVersion` which is bein used. It will be one of two values: `0` versions before Java 2 platform v1.2, `1` versions after Java 2 platform v1.2.
        Since:
          1.2

      - ##### vgap

            int vgap

        The flow layout manager allows a separation of components with gaps. The vertical gap will specify the space between rows and between the the rows and the borders of the `Container`.
        See Also:
          - `FlowLayout.getHgap()`
          - `FlowLayout.setHgap(int)`

  - ### Class java.awt.Font

    class Font extends Object implements Serializable
    serialVersionUID:
      -4206021311591459213L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reads the `ObjectInputStream`. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
        See Also:
          - `Font.writeObject(java.io.ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to a stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`
          - `Font.readObject(java.io.ObjectInputStream)`

    - #### Serialized Fields

      - ##### fontSerializedDataVersion

            int fontSerializedDataVersion

        The `Font` Serializable Data Form.

      - ##### fRequestedAttributes

            Hashtable<Object,Object> fRequestedAttributes

        This is now only used during serialization. Typically it is null.
        See Also:
          - `Font.getAttributes()`

      - ##### name

            String name

        The logical name of this `Font`, as passed to the constructor.
        Since:
          1.0
        See Also:
          - `Font.getName()`

      - ##### pointSize

            float pointSize

        The point size of this `Font` in `float`.
        See Also:
          - `Font.getSize()`
          - `Font.getSize2D()`

      - ##### size

            int size

        The point size of this `Font`, rounded to integer.
        Since:
          1.0
        See Also:
          - `Font.getSize()`

      - ##### style

            int style

        The style of this `Font`, as passed to the constructor. This style can be PLAIN, BOLD, ITALIC, or BOLD+ITALIC.
        Since:
          1.0
        See Also:
          - `Font.getStyle()`

  - ### Exception Class java.awt.FontFormatException

    class FontFormatException extends Exception implements Serializable
    serialVersionUID:
      -4481290147811361272L

  - ### Class java.awt.FontMetrics

    class FontMetrics extends Object implements Serializable
    serialVersionUID:
      1681126225205050147L

    - #### Serialized Fields

      - ##### font

            Font font

        The actual `Font` from which the font metrics are created. This cannot be null.
        See Also:
          - `FontMetrics.getFont()`

  - ### Class java.awt.Frame

    class Frame extends Window implements Serializable
    serialVersionUID:
      2673458971256075116L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Reads the `ObjectInputStream`. Tries to read an icon `Image`, which is optional data available as of 1.4. If an icon `Image` is not available, but anything other than an EOF is detected, an `OptionalDataException` will be thrown. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `OptionalDataException` - if an icon `Image` is not available, but anything other than an EOF is detected
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
          `IOException`
        See Also:
          - `GraphicsEnvironment.isHeadless()`
          - `Image`
          - `Frame.getIconImage()`
          - `Window.setIconImage(Image)`
          - `Frame.writeObject(ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream. Writes an optional serializable icon `Image`, which is available as of 1.4.
        Serial Data:
          an optional icon `Image`
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `Image`
          - `Frame.getIconImage()`
          - `Window.setIconImage(Image)`
          - `Frame.readObject(ObjectInputStream)`

    - #### Serialized Fields

      - ##### frameSerializedDataVersion

            int frameSerializedDataVersion

        `Frame`'s Serialized Data Version.

      - ##### maximizedBounds

            Rectangle maximizedBounds

        Maximized bounds for this frame.
        Since:
          1.4
        See Also:
          - `Frame.setMaximizedBounds(Rectangle)`
          - `Frame.getMaximizedBounds()`

      - ##### mbManagement

            boolean mbManagement

        `mbManagement` is only used by the Motif implementation.

      - ##### menuBar

            MenuBar menuBar

        The frames menubar. If `menuBar` = null the frame will not have a menubar.
        See Also:
          - `Frame.getMenuBar()`
          - `Frame.setMenuBar(MenuBar)`

      - ##### ownedWindows

            Vector<Window> ownedWindows

        The Windows owned by the Frame. Note: in 1.2 this has been superseded by Window.ownedWindowList
        See Also:
          - `Window.ownedWindowList`

      - ##### resizable

            boolean resizable

        This field indicates whether the frame is resizable. This property can be changed at any time. `resizable` will be true if the frame is resizable, otherwise it will be false.
        See Also:
          - `Frame.isResizable()`

      - ##### state

            int state

        The bitwise mask of frame state constants.

      - ##### title

            String title

        This is the title of the frame. It can be changed at any time. `title` can be null and if this is the case the `title` = "".
        See Also:
          - `Frame.getTitle()`
          - `Frame.setTitle(String)`

      - ##### undecorated

            boolean undecorated

        This field indicates whether the frame is undecorated. This property can only be changed while the frame is not displayable. `undecorated` will be true if the frame is undecorated, otherwise it will be false.
        Since:
          1.4
        See Also:
          - `Frame.setUndecorated(boolean)`
          - `Frame.isUndecorated()`
          - `Component.isDisplayable()`

  - ### Class java.awt.Frame.AccessibleAWTFrame

    class AccessibleAWTFrame extends Window.AccessibleAWTWindow implements Serializable
    serialVersionUID:
      -6172960752956030250L

  - ### Class java.awt.GraphicsConfigTemplate

    class GraphicsConfigTemplate extends Object implements Serializable
    serialVersionUID:
      -8061369279557787079L

  - ### Class java.awt.GridBagConstraints

    class GridBagConstraints extends Object implements Serializable
    serialVersionUID:
      -1000070633030801713L

    - #### Serialized Fields

      - ##### anchor

            int anchor

        This field is used when the component is smaller than its display area. It determines where, within the display area, to place the component.

        There are three kinds of possible values: orientation relative, baseline relative and absolute. Orientation relative values are interpreted relative to the container's component orientation property, baseline relative values are interpreted relative to the baseline and absolute values are not. The absolute values are: `CENTER`, `NORTH`, `NORTHEAST`, `EAST`, `SOUTHEAST`, `SOUTH`, `SOUTHWEST`, `WEST`, and `NORTHWEST`. The orientation relative values are: `PAGE_START`, `PAGE_END`, `LINE_START`, `LINE_END`, `FIRST_LINE_START`, `FIRST_LINE_END`, `LAST_LINE_START` and `LAST_LINE_END`. The baseline relative values are: `BASELINE`, `BASELINE_LEADING`, `BASELINE_TRAILING`, `ABOVE_BASELINE`, `ABOVE_BASELINE_LEADING`, `ABOVE_BASELINE_TRAILING`, `BELOW_BASELINE`, `BELOW_BASELINE_LEADING`, and `BELOW_BASELINE_TRAILING`. The default value is `CENTER`.

        See Also:
          - `GridBagConstraints.clone()`
          - `ComponentOrientation`

      - ##### fill

            int fill

        This field is used when the component's display area is larger than the component's requested size. It determines whether to resize the component, and if so, how.

        The following values are valid for `fill`:

        - `NONE`: Do not resize the component.
        - `HORIZONTAL`: Make the component wide enough to fill its display area horizontally, but do not change its height.
        - `VERTICAL`: Make the component tall enough to fill its display area vertically, but do not change its width.
        - `BOTH`: Make the component fill its display area entirely.

        The default value is `NONE`.

        See Also:
          - `GridBagConstraints.clone()`

      - ##### gridheight

            int gridheight

        Specifies the number of cells in a column for the component's display area.

        Use `REMAINDER` to specify that the component's display area will be from `gridy` to the last cell in the column. Use `RELATIVE` to specify that the component's display area will be from `gridy` to the next to the last one in its column.

        `gridheight` should be a non-negative value and the default value is 1.

        See Also:
          - `GridBagConstraints.clone()`
          - `GridBagConstraints.gridwidth`

      - ##### gridwidth

            int gridwidth

        Specifies the number of cells in a row for the component's display area.

        Use `REMAINDER` to specify that the component's display area will be from `gridx` to the last cell in the row. Use `RELATIVE` to specify that the component's display area will be from `gridx` to the next to the last one in its row.

        `gridwidth` should be non-negative and the default value is 1.

        See Also:
          - `GridBagConstraints.clone()`
          - `GridBagConstraints.gridheight`

      - ##### gridx

            int gridx

        Specifies the cell containing the leading edge of the component's display area, where the first cell in a row has `gridx=0`. The leading edge of a component's display area is its left edge for a horizontal, left-to-right container and its right edge for a horizontal, right-to-left container. The value `RELATIVE` specifies that the component be placed immediately following the component that was added to the container just before this component was added.

        The default value is `RELATIVE`. `gridx` should be a non-negative value.

        See Also:
          - `GridBagConstraints.clone()`
          - `GridBagConstraints.gridy`
          - `ComponentOrientation`

      - ##### gridy

            int gridy

        Specifies the cell at the top of the component's display area, where the topmost cell has `gridy=0`. The value `RELATIVE` specifies that the component be placed just below the component that was added to the container just before this component was added.

        The default value is `RELATIVE`. `gridy` should be a non-negative value.

        See Also:
          - `GridBagConstraints.clone()`
          - `GridBagConstraints.gridx`

      - ##### insets

            Insets insets

        This field specifies the external padding of the component, the minimum amount of space between the component and the edges of its display area.

        The default value is `new Insets(0, 0, 0, 0)`.

        See Also:
          - `GridBagConstraints.clone()`

      - ##### ipadx

            int ipadx

        This field specifies the internal padding of the component, how much space to add to the minimum width of the component. The width of the component is at least its minimum width plus `ipadx` pixels.

        The default value is `0`.

        See Also:
          - `GridBagConstraints.clone()`
          - `GridBagConstraints.ipady`

      - ##### ipady

            int ipady

        This field specifies the internal padding, that is, how much space to add to the minimum height of the component. The height of the component is at least its minimum height plus `ipady` pixels.

        The default value is 0.

        See Also:
          - `GridBagConstraints.clone()`
          - `GridBagConstraints.ipadx`

      - ##### minHeight

            int minHeight

        The minimum height of the component. It is used to calculate `ipadx`, where the default will be 0.
        See Also:
          - `GridBagConstraints.ipadx`

      - ##### minWidth

            int minWidth

        The minimum width of the component. It is used to calculate `ipady`, where the default will be 0.
        See Also:
          - `GridBagConstraints.ipady`

      - ##### tempHeight

            int tempHeight

        Temporary place holder for the Height of the component.

      - ##### tempWidth

            int tempWidth

        Temporary place holder for the Width of the component.

      - ##### tempX

            int tempX

        Temporary place holder for the x coordinate.

      - ##### tempY

            int tempY

        Temporary place holder for the y coordinate.

      - ##### weightx

            double weightx

        Specifies how to distribute extra horizontal space.

        The grid bag layout manager calculates the weight of a column to be the maximum `weightx` of all the components in a column. If the resulting layout is smaller horizontally than the area it needs to fill, the extra space is distributed to each column in proportion to its weight. A column that has a weight of zero receives no extra space.

        If all the weights are zero, all the extra space appears between the grids of the cell and the left and right edges.

        The default value of this field is `0`. `weightx` should be a non-negative value.

        See Also:
          - `GridBagConstraints.clone()`
          - `GridBagConstraints.weighty`

      - ##### weighty

            double weighty

        Specifies how to distribute extra vertical space.

        The grid bag layout manager calculates the weight of a row to be the maximum `weighty` of all the components in a row. If the resulting layout is smaller vertically than the area it needs to fill, the extra space is distributed to each row in proportion to its weight. A row that has a weight of zero receives no extra space.

        If all the weights are zero, all the extra space appears between the grids of the cell and the top and bottom edges.

        The default value of this field is `0`. `weighty` should be a non-negative value.

        See Also:
          - `GridBagConstraints.clone()`
          - `GridBagConstraints.weightx`

  - ### Class java.awt.GridBagLayout

    class GridBagLayout extends Object implements Serializable
    serialVersionUID:
      8838754796412211005L

    - #### Serialized Fields

      - ##### columnWeights

            double[] columnWeights

        This field holds the overrides to the column weights. If this field is non-`null` the values are applied to the gridbag after all of the columns weights have been calculated. If `columnWeights[i] >` weight for column i, then column i is assigned the weight in `columnWeights[i]`. If `columnWeights` has more elements than the number of columns, the excess elements are ignored - they do not cause more columns to be created.

      - ##### columnWidths

            int[] columnWidths

        This field holds the overrides to the column minimum width. If this field is non-`null` the values are applied to the gridbag after all of the minimum columns widths have been calculated. If columnWidths has more elements than the number of columns, columns are added to the gridbag to match the number of elements in columnWidth.
        See Also:
          - `GridBagLayout.getLayoutDimensions()`

      - ##### componentAdjusting

            Component componentAdjusting

        The component being positioned. This is set before calling into `adjustForGravity`.

      - ##### comptable

            Hashtable<Component,GridBagConstraints> comptable

        This hashtable maintains the association between a component and its gridbag constraints. The Keys in `comptable` are the components and the values are the instances of `GridBagConstraints`.
        See Also:
          - `GridBagConstraints`

      - ##### defaultConstraints

            GridBagConstraints defaultConstraints

        This field holds a gridbag constraints instance containing the default values, so if a component does not have gridbag constraints associated with it, then the component will be assigned a copy of the `defaultConstraints`.
        See Also:
          - `GridBagLayout.getConstraints(Component)`
          - `GridBagLayout.setConstraints(Component, GridBagConstraints)`
          - `GridBagLayout.lookupConstraints(Component)`

      - ##### layoutInfo

            GridBagLayoutInfo layoutInfo

        This field holds the layout information for the gridbag. The information in this field is based on the most recent validation of the gridbag. If `layoutInfo` is `null` this indicates that there are no components in the gridbag or if there are components, they have not yet been validated.
        See Also:
          - `GridBagLayout.getLayoutInfo(Container, int)`

      - ##### rowHeights

            int[] rowHeights

        This field holds the overrides to the row minimum heights. If this field is non-`null` the values are applied to the gridbag after all of the minimum row heights have been calculated. If `rowHeights` has more elements than the number of rows, rows are added to the gridbag to match the number of elements in `rowHeights`.
        See Also:
          - `GridBagLayout.getLayoutDimensions()`

      - ##### rowWeights

            double[] rowWeights

        This field holds the overrides to the row weights. If this field is non-`null` the values are applied to the gridbag after all of the rows weights have been calculated. If `rowWeights[i] >` weight for row i, then row i is assigned the weight in `rowWeights[i]`. If `rowWeights` has more elements than the number of rows, the excess elements are ignored - they do not cause more rows to be created.

  - ### Class java.awt.GridBagLayoutInfo

    class GridBagLayoutInfo extends Object implements Serializable
    serialVersionUID:
      -4899416460737170217L

    - #### Serialized Fields

      - ##### baselineType

            short[] baselineType

        The type of baseline for a particular row. A mix of the BaselineResizeBehavior constants `(1 << ordinal())`

      - ##### hasBaseline

            boolean hasBaseline

        Whether or not baseline layout has been requested and one of the components has a valid baseline.

      - ##### height

            int height

        The number of cells: horizontal and vertical.

      - ##### maxAscent

            int[] maxAscent

        Max ascent (baseline).

      - ##### maxDescent

            int[] maxDescent

        Max descent (height - baseline)

      - ##### minHeight

            int[] minHeight

        The largest minHeight in each row.

      - ##### minWidth

            int[] minWidth

        The largest minWidth in each column.

      - ##### startx

            int startx

        The starting point for layout.

      - ##### starty

            int starty

        The starting point for layout.

      - ##### weightX

            double[] weightX

        The largest weight in each column.

      - ##### weightY

            double[] weightY

        The largest weight in each row.

      - ##### width

            int width

        The number of cells: horizontal and vertical.

  - ### Class java.awt.GridLayout

    class GridLayout extends Object implements Serializable
    serialVersionUID:
      -7411804673224730901L

    - #### Serialized Fields

      - ##### cols

            int cols

        This is the number of columns specified for the grid. The number of columns can be changed at any time. This should be a non negative integer, where '0' means 'any number' meaning that the number of Columns in that dimension depends on the other dimension.
        See Also:
          - `GridLayout.getColumns()`
          - `GridLayout.setColumns(int)`

      - ##### hgap

            int hgap

        This is the horizontal gap (in pixels) which specifies the space between columns. They can be changed at any time. This should be a non-negative integer.
        See Also:
          - `GridLayout.getHgap()`
          - `GridLayout.setHgap(int)`

      - ##### rows

            int rows

        This is the number of rows specified for the grid. The number of rows can be changed at any time. This should be a non negative integer, where '0' means 'any number' meaning that the number of Rows in that dimension depends on the other dimension.
        See Also:
          - `GridLayout.getRows()`
          - `GridLayout.setRows(int)`

      - ##### vgap

            int vgap

        This is the vertical gap (in pixels) which specifies the space between rows. They can be changed at any time. This should be a non negative integer.
        See Also:
          - `GridLayout.getVgap()`
          - `GridLayout.setVgap(int)`

  - ### Exception Class java.awt.HeadlessException

    class HeadlessException extends UnsupportedOperationException implements Serializable
    serialVersionUID:
      167183644944358563L

  - ### Exception Class java.awt.IllegalComponentStateException

    class IllegalComponentStateException extends IllegalStateException implements Serializable
    serialVersionUID:
      -1889339587208144238L

  - ### Class java.awt.Insets

    class Insets extends Object implements Serializable
    serialVersionUID:
      -2272572637695466749L

    - #### Serialized Fields

      - ##### bottom

            int bottom

        The inset from the bottom. This value is subtracted from the Bottom of the rectangle to yield a new location for the Bottom.
        See Also:
          - `Insets.clone()`

      - ##### left

            int left

        The inset from the left. This value is added to the Left of the rectangle to yield a new location for the Left edge.
        See Also:
          - `Insets.clone()`

      - ##### right

            int right

        The inset from the right. This value is subtracted from the Right of the rectangle to yield a new location for the Right edge.
        See Also:
          - `Insets.clone()`

      - ##### top

            int top

        The inset from the top. This value is added to the Top of the rectangle to yield a new location for the Top.
        See Also:
          - `Insets.clone()`

  - ### Class java.awt.Label

    class Label extends Component implements Serializable
    serialVersionUID:
      3094126758329070636L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Read a label from an object input stream.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        Since:
          1.4
        See Also:
          - `GraphicsEnvironment.isHeadless()`

    - #### Serialized Fields

      - ##### alignment

            int alignment

        The label's alignment. The default alignment is set to be left justified.
        See Also:
          - `Label.getAlignment()`
          - `Label.setAlignment(int)`

      - ##### text

            String text

        The text of this label. This text can be modified by the program but never by the user.
        See Also:
          - `Label.getText()`
          - `Label.setText(String)`

  - ### Class java.awt.Label.AccessibleAWTLabel

    class AccessibleAWTLabel extends Component.AccessibleAWTComponent implements Serializable
    serialVersionUID:
      -3568967560160480438L

  - ### Class java.awt.List

    class List extends Component implements Serializable
    serialVersionUID:
      -3304312411574666869L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Reads the `ObjectInputStream` and if it isn't `null` adds a listener to receive both item events and action events (as specified by the key stored in the stream) fired by the `List`. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `List.removeItemListener(ItemListener)`
          - `List.addItemListener(ItemListener)`
          - `GraphicsEnvironment.isHeadless()`
          - `List.writeObject(ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream. Writes a list of serializable `ItemListeners` and `ActionListeners` as optional data. The non-serializable listeners are detected and no attempt is made to serialize them.
        Serial Data:
          `null` terminated sequence of 0 or more pairs; the pair consists of a `String` and an `Object`; the `String` indicates the type of object and is one of the following: `itemListenerK` indicating an `ItemListener` object; `actionListenerK` indicating an `ActionListener` object
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`
          - `Component.itemListenerK`
          - `Component.actionListenerK`
          - `List.readObject(ObjectInputStream)`

    - #### Serialized Fields

      - ##### items

            Vector<String> items

        A vector created to contain items which will become part of the List Component.
        See Also:
          - `List.addItem(String)`
          - `List.getItem(int)`

      - ##### listSerializedDataVersion

            int listSerializedDataVersion

        The `List` component's Serialized Data Version.

      - ##### multipleMode

            boolean multipleMode

        `multipleMode` is a variable that will be set to `true` if a list component is to be set to multiple selection mode, that is where the user can select more than one item in a list at one time. `multipleMode` will be set to false if the list component is set to single selection, that is where the user can only select one item on the list at any one time.
        See Also:
          - `List.isMultipleMode()`
          - `List.setMultipleMode(boolean)`

      - ##### rows

            int rows

        This field will represent the number of visible rows in the `List` Component. It is specified only once, and that is when the list component is actually created. It will never change.
        See Also:
          - `List.getRows()`

      - ##### selected

            int[] selected

        `selected` is an array that will contain the indices of items that have been selected.
        See Also:
          - `List.getSelectedIndexes()`
          - `List.getSelectedIndex()`

      - ##### visibleIndex

            int visibleIndex

        This variable contains the value that will be used when trying to make a particular list item visible.
        See Also:
          - `List.makeVisible(int)`

  - ### Class java.awt.List.AccessibleAWTList

    class AccessibleAWTList extends Component.AccessibleAWTComponent implements Serializable
    serialVersionUID:
      7924617370136012829L

  - ### Class java.awt.List.AccessibleAWTList.AccessibleAWTListChild

    class AccessibleAWTListChild extends Component.AccessibleAWTComponent implements Serializable
    serialVersionUID:
      4412022926028300317L

    - #### Serialized Fields

      - ##### indexInParent

            int indexInParent

        The index in the parent.

      - ##### parent

            List parent

        The parent `List`.

  - ### Class java.awt.MediaTracker

    class MediaTracker extends Object implements Serializable
    serialVersionUID:
      -483174189758638095L

    - #### Serialized Fields

      - ##### head

            java.awt.MediaEntry head

        The head of the list of `Images` that is being tracked by the `MediaTracker`.
        See Also:
          - `MediaTracker.addImage(Image, int)`
          - `MediaTracker.removeImage(Image)`

      - ##### target

            Component target

        A given `Component` that will be tracked by a media tracker where the image will eventually be drawn.
        See Also:
          - `MediaTracker(Component)`

  - ### Class java.awt.Menu

    class Menu extends MenuItem implements Serializable
    serialVersionUID:
      -8809584163345499784L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException, HeadlessException
        Reads the `ObjectInputStream`. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `GraphicsEnvironment.isHeadless()`
          - `Menu.writeObject(ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`
          - `Menu.readObject(ObjectInputStream)`

    - #### Serialized Fields

      - ##### isHelpMenu

            boolean isHelpMenu

        This field will be set to `true` if the Menu in question is actually a help menu. Otherwise it will be set to `false`.

      - ##### items

            Vector<MenuItem> items

        A vector of the items that will be part of the Menu.
        See Also:
          - `Menu.countItems()`

      - ##### menuSerializedDataVersion

            int menuSerializedDataVersion

        The menu serialized Data Version.

      - ##### tearOff

            boolean tearOff

        This field indicates whether the menu has the tear of property or not. It will be set to `true` if the menu has the tear off property and it will be set to `false` if it does not. A torn off menu can be deleted by a user when it is no longer needed.
        See Also:
          - `Menu.isTearOff()`

  - ### Class java.awt.Menu.AccessibleAWTMenu

    class AccessibleAWTMenu extends MenuItem.AccessibleAWTMenuItem implements Serializable
    serialVersionUID:
      5228160894980069094L

  - ### Class java.awt.MenuBar

    class MenuBar extends MenuComponent implements Serializable
    serialVersionUID:
      -4930327919388951260L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Reads the `ObjectInputStream`. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `GraphicsEnvironment.isHeadless()`
          - `MenuBar.writeObject(java.io.ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`
          - `MenuBar.readObject(java.io.ObjectInputStream)`

    - #### Serialized Fields

      - ##### helpMenu

            Menu helpMenu

        This menu is a special menu dedicated to help. The one thing to note about this menu is that on some platforms it appears at the right edge of the menubar.
        See Also:
          - `MenuBar.getHelpMenu()`
          - `MenuBar.setHelpMenu(Menu)`

      - ##### menuBarSerializedDataVersion

            int menuBarSerializedDataVersion

        The MenuBar's serialized data version.

      - ##### menus

            Vector<Menu> menus

        This field represents a vector of the actual menus that will be part of the MenuBar.
        See Also:
          - `MenuBar.countMenus()`

  - ### Class java.awt.MenuBar.AccessibleAWTMenuBar

    class AccessibleAWTMenuBar extends MenuComponent.AccessibleAWTMenuComponent implements Serializable
    serialVersionUID:
      -8577604491830083815L

  - ### Class java.awt.MenuComponent

    class MenuComponent extends Object implements Serializable
    serialVersionUID:
      -4536902356223894379L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Reads the menu component from an object input stream.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `GraphicsEnvironment.isHeadless()`

    - #### Serialized Fields

      - ##### accessibleContext

            AccessibleContext accessibleContext

        MenuComponent will contain all of the methods in interface Accessible, though it won't actually implement the interface - that will be up to the individual objects which extend MenuComponent.

      - ##### font

            Font font

        The menu component's font. This value can be `null` at which point a default will be used. This defaults to `null`.
        See Also:
          - `MenuComponent.setFont(Font)`
          - `MenuComponent.getFont()`

      - ##### name

            String name

        The menu component's name, which defaults to `null`.
        See Also:
          - `MenuComponent.getName()`
          - `MenuComponent.setName(String)`

      - ##### nameExplicitlySet

            boolean nameExplicitlySet

        A variable to indicate whether a name is explicitly set. If `true` the name will be set explicitly. This defaults to `false`.
        See Also:
          - `MenuComponent.setName(String)`

      - ##### newEventsOnly

            boolean newEventsOnly

        Defaults to `false`.
        See Also:
          - `MenuComponent.dispatchEvent(AWTEvent)`

  - ### Class java.awt.MenuComponent.AccessibleAWTMenuComponent

    class AccessibleAWTMenuComponent extends AccessibleContext implements Serializable
    serialVersionUID:
      -4269533416223798698L

  - ### Class java.awt.MenuItem

    class MenuItem extends MenuComponent implements Serializable
    serialVersionUID:
      -21757335363267194L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Reads the `ObjectInputStream` and if it isn't `null` adds a listener to receive action events fired by the `Menu` Item. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `MenuItem.removeActionListener(ActionListener)`
          - `MenuItem.addActionListener(ActionListener)`
          - `MenuItem.writeObject(ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream. Writes a list of serializable `ActionListeners` as optional data. The non-serializable listeners are detected and no attempt is made to serialize them.
        Serial Data:
          `null` terminated sequence of 0 or more pairs; the pair consists of a `String` and an `Object`; the `String` indicates the type of object and is one of the following: `actionListenerK` indicating an `ActionListener` object
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`
          - `MenuItem.readObject(ObjectInputStream)`

    - #### Serialized Fields

      - ##### actionCommand

            String actionCommand

        This field indicates the command that has been issued by a particular menu item. By default the `actionCommand` is the label of the menu item, unless it has been set using setActionCommand.
        See Also:
          - `MenuItem.setActionCommand(String)`
          - `MenuItem.getActionCommand()`

      - ##### enabled

            boolean enabled

        A value to indicate whether a menu item is enabled or not. If it is enabled, `enabled` will be set to true. Else `enabled` will be set to false.
        See Also:
          - `MenuItem.isEnabled()`
          - `MenuItem.setEnabled(boolean)`

      - ##### eventMask

            long eventMask

        The eventMask is ONLY set by subclasses via enableEvents. The mask should NOT be set when listeners are registered so that we can distinguish the difference between when listeners request events and subclasses request them.

      - ##### label

            String label

        `label` is the label of a menu item. It can be any string.
        See Also:
          - `MenuItem.getLabel()`
          - `MenuItem.setLabel(String)`

      - ##### menuItemSerializedDataVersion

            int menuItemSerializedDataVersion

        Menu item serialized data version.

      - ##### shortcut

            MenuShortcut shortcut

        A sequence of key stokes that ia associated with a menu item. Note :in 1.1.2 you must use setActionCommand() on a menu item in order for its shortcut to work.
        See Also:
          - `MenuItem.getShortcut()`
          - `MenuItem.setShortcut(MenuShortcut)`
          - `MenuItem.deleteShortcut()`

  - ### Class java.awt.MenuItem.AccessibleAWTMenuItem

    class AccessibleAWTMenuItem extends MenuComponent.AccessibleAWTMenuComponent implements Serializable
    serialVersionUID:
      -217847831945965825L

  - ### Class java.awt.MenuShortcut

    class MenuShortcut extends Object implements Serializable
    serialVersionUID:
      143448358473180225L

    - #### Serialized Fields

      - ##### key

            int key

        The virtual keycode for the menu shortcut. This is the keycode with which the menu shortcut will be created. Note that it is a virtual keycode, not a character, e.g. KeyEvent.VK_A, not 'a'. Note: in 1.1.x you must use setActionCommand() on a menu item in order for its shortcut to work, otherwise it will fire a null action command.
        Since:
          1.1
        See Also:
          - `MenuShortcut.getKey()`
          - `MenuShortcut.usesShiftModifier()`
          - `KeyEvent`

      - ##### usesShift

            boolean usesShift

        Indicates whether the shift key was pressed. If true, the shift key was pressed. If false, the shift key was not pressed
        Since:
          1.1
        See Also:
          - `MenuShortcut.usesShiftModifier()`

  - ### Class java.awt.Panel

    class Panel extends Container implements Serializable
    serialVersionUID:
      -2728009084054400034L

  - ### Class java.awt.Panel.AccessibleAWTPanel

    class AccessibleAWTPanel extends Container.AccessibleAWTContainer implements Serializable
    serialVersionUID:
      -6409552226660031050L

  - ### Class java.awt.Point

    class Point extends Point2D implements Serializable
    serialVersionUID:
      -5276940640259749850L

    - #### Serialized Fields

      - ##### x

            int x

        The X coordinate of this `Point`. If no X coordinate is set it will default to 0.
        Since:
          1.0
        See Also:
          - `Point.getLocation()`
          - `Point.move(int, int)`

      - ##### y

            int y

        The Y coordinate of this `Point`. If no Y coordinate is set it will default to 0.
        Since:
          1.0
        See Also:
          - `Point.getLocation()`
          - `Point.move(int, int)`

  - ### Class java.awt.Polygon

    class Polygon extends Object implements Serializable
    serialVersionUID:
      -6460061437900069969L

    - #### Serialized Fields

      - ##### bounds

            Rectangle bounds

        The bounds of this `Polygon`. This value can be null.
        Since:
          1.0
        See Also:
          - `Polygon.getBoundingBox()`
          - `Polygon.getBounds()`

      - ##### npoints

            int npoints

        The total number of points. The value of `npoints` represents the number of valid points in this `Polygon` and might be less than the number of elements in `xpoints` or `ypoints`. This value can be 0.
        Since:
          1.0
        See Also:
          - `Polygon.addPoint(int, int)`

      - ##### xpoints

            int[] xpoints

        The array of X coordinates. The number of elements in this array might be more than the number of X coordinates in this `Polygon`. The extra elements allow new points to be added to this `Polygon` without re-creating this array. The value of `npoints` is equal to the number of valid points in this `Polygon`.
        Since:
          1.0
        See Also:
          - `Polygon.addPoint(int, int)`

      - ##### ypoints

            int[] ypoints

        The array of Y coordinates. The number of elements in this array might be more than the number of Y coordinates in this `Polygon`. The extra elements allow new points to be added to this `Polygon` without re-creating this array. The value of `npoints` is equal to the number of valid points in this `Polygon`.
        Since:
          1.0
        See Also:
          - `Polygon.addPoint(int, int)`

  - ### Class java.awt.PopupMenu

    class PopupMenu extends Menu implements Serializable
    serialVersionUID:
      -4620452533522760060L

  - ### Class java.awt.PopupMenu.AccessibleAWTPopupMenu

    class AccessibleAWTPopupMenu extends Menu.AccessibleAWTMenu implements Serializable
    serialVersionUID:
      -4282044795947239955L

  - ### Class java.awt.Rectangle

    class Rectangle extends Rectangle2D implements Serializable
    serialVersionUID:
      -4345857070255674764L

    - #### Serialized Fields

      - ##### height

            int height

        The height of the `Rectangle`.
        Since:
          1.0
        See Also:
          - `Rectangle.setSize(int, int)`
          - `Rectangle.getSize()`

      - ##### width

            int width

        The width of the `Rectangle`.
        Since:
          1.0
        See Also:
          - `Rectangle.setSize(int, int)`
          - `Rectangle.getSize()`

      - ##### x

            int x

        The X coordinate of the upper-left corner of the `Rectangle`.
        Since:
          1.0
        See Also:
          - `Rectangle.setLocation(int, int)`
          - `Rectangle.getLocation()`

      - ##### y

            int y

        The Y coordinate of the upper-left corner of the `Rectangle`.
        Since:
          1.0
        See Also:
          - `Rectangle.setLocation(int, int)`
          - `Rectangle.getLocation()`

  - ### Class java.awt.Scrollbar

    class Scrollbar extends Component implements Serializable
    serialVersionUID:
      8451667562882310543L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Reads the `ObjectInputStream` and if it isn't `null` adds a listener to receive adjustment events fired by the `Scrollbar`. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `GraphicsEnvironment.isHeadless()`
          - `Scrollbar.writeObject(ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream. Writes a list of serializable `AdjustmentListeners` as optional data. The non-serializable listeners are detected and no attempt is made to serialize them.
        Serial Data:
          `null` terminated sequence of 0 or more pairs; the pair consists of a `String` and an `Object`; the `String` indicates the type of object and is one of the following: `adjustmentListenerK` indicating an `AdjustmentListener` object
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`
          - `Component.adjustmentListenerK`
          - `Scrollbar.readObject(ObjectInputStream)`

    - #### Serialized Fields

      - ##### lineIncrement

            int lineIncrement

        The amount by which the scrollbar value will change when going up or down by a line. This value must be greater than zero.
        See Also:
          - `Scrollbar.getLineIncrement()`
          - `Scrollbar.setLineIncrement(int)`

      - ##### maximum

            int maximum

        The maximum value of the `Scrollbar`. This value must be greater than the `minimum` value.
        See Also:
          - `Scrollbar.getMaximum()`
          - `Scrollbar.setMaximum(int)`

      - ##### minimum

            int minimum

        The minimum value of the `Scrollbar`. This value must be less than the `maximum` value.
        See Also:
          - `Scrollbar.getMinimum()`
          - `Scrollbar.setMinimum(int)`

      - ##### orientation

            int orientation

        The `Scrollbar`'s orientation--being either horizontal or vertical. This value should be specified when the scrollbar is created.
        orientation can be either : `VERTICAL` or `HORIZONTAL` only.
        See Also:
          - `Scrollbar.getOrientation()`
          - `Scrollbar.setOrientation(int)`

      - ##### pageIncrement

            int pageIncrement

        The amount by which the scrollbar value will change when going up or down by a page. This value must be greater than zero.
        See Also:
          - `Scrollbar.getPageIncrement()`
          - `Scrollbar.setPageIncrement(int)`

      - ##### scrollbarSerializedDataVersion

            int scrollbarSerializedDataVersion

        The scroll bar's serialized Data Version.

      - ##### value

            int value

        The value of the `Scrollbar`. This property must be greater than or equal to `minimum` and less than or equal to `maximum - visibleAmount`
        See Also:
          - `Scrollbar.getValue()`
          - `Scrollbar.setValue(int)`

      - ##### visibleAmount

            int visibleAmount

        The size of the `Scrollbar`'s bubble. When a scroll bar is used to select a range of values, the visibleAmount represents the size of this range. Depending on platform, this may be visually indicated by the size of the bubble.
        See Also:
          - `Scrollbar.getVisibleAmount()`
          - `Scrollbar.setVisibleAmount(int)`

  - ### Class java.awt.Scrollbar.AccessibleAWTScrollBar

    class AccessibleAWTScrollBar extends Component.AccessibleAWTComponent implements Serializable
    serialVersionUID:
      -344337268523697807L

  - ### Class java.awt.ScrollPane

    class ScrollPane extends Container implements Serializable
    serialVersionUID:
      7956609840827222915L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Reads default serializable fields to stream.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `GraphicsEnvironment.isHeadless()`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### hAdjustable

            ScrollPaneAdjustable hAdjustable

        An adjustable horizontal scrollbar. It is important to note that you must NOT call 3 `Adjustable` methods, namely: `setMinimum()`, `setMaximum()`, `setVisibleAmount()`.
        See Also:
          - `ScrollPane.getHAdjustable()`

      - ##### scrollbarDisplayPolicy

            int scrollbarDisplayPolicy

        There are 3 ways in which a scroll bar can be displayed. This integer will represent one of these 3 displays - (SCROLLBARS_ALWAYS, SCROLLBARS_AS_NEEDED, SCROLLBARS_NEVER)
        See Also:
          - `ScrollPane.getScrollbarDisplayPolicy()`

      - ##### vAdjustable

            ScrollPaneAdjustable vAdjustable

        An adjustable vertical scrollbar. It is important to note that you must NOT call 3 `Adjustable` methods, namely: `setMinimum()`, `setMaximum()`, `setVisibleAmount()`.
        See Also:
          - `ScrollPane.getVAdjustable()`

      - ##### wheelScrollingEnabled

            boolean wheelScrollingEnabled

        Indicates whether or not scrolling should take place when a MouseWheelEvent is received.
        Since:
          1.4

  - ### Class java.awt.ScrollPane.AccessibleAWTScrollPane

    class AccessibleAWTScrollPane extends Container.AccessibleAWTContainer implements Serializable
    serialVersionUID:
      6100703663886637L

  - ### Class java.awt.ScrollPaneAdjustable

    class ScrollPaneAdjustable extends Object implements Serializable
    serialVersionUID:
      -3359745691033257079L

    - #### Serialized Fields

      - ##### adjustmentListener

            AdjustmentListener adjustmentListener

        Specified adjustment listener to receive adjustment events from this `ScrollPaneAdjustable`.

      - ##### blockIncrement

            int blockIncrement

        The amount by which the scrollbar value will change when going up or down by a page. This value should be a non negative integer.
        See Also:
          - `ScrollPaneAdjustable.getBlockIncrement()`
          - `ScrollPaneAdjustable.setBlockIncrement(int)`

      - ##### maximum

            int maximum

        The maximum value of this scrollbar. This value can only be set by the `ScrollPane`.
        See Also:
          - `ScrollPaneAdjustable.getMaximum()`
          - `ScrollPaneAdjustable.setSpan(int, int, int)`

      - ##### minimum

            int minimum

        The minimum value of this scrollbar. This value can only be set by the `ScrollPane`.

        ATTN: In current implementation `minimum` is always `0`. This field can only be altered via `setSpan` method and `ScrollPane` always calls that method with `0` for the minimum. `getMinimum` method always returns `0` without checking this field.

        See Also:
          - `ScrollPaneAdjustable.getMinimum()`
          - `ScrollPaneAdjustable.setSpan(int, int, int)`

      - ##### orientation

            int orientation

        Orientation of this scrollbar.
        See Also:
          - `ScrollPaneAdjustable.getOrientation()`
          - `Adjustable.HORIZONTAL`
          - `Adjustable.VERTICAL`

      - ##### sp

            ScrollPane sp

        The `ScrollPane` this object is a scrollbar of.

      - ##### unitIncrement

            int unitIncrement

        The amount by which the scrollbar value will change when going up or down by a line. This value should be a non negative integer.
        See Also:
          - `ScrollPaneAdjustable.getUnitIncrement()`
          - `ScrollPaneAdjustable.setUnitIncrement(int)`

      - ##### value

            int value

        The value of this scrollbar. `value` should be greater than `minimum` and less than `maximum`
        See Also:
          - `ScrollPaneAdjustable.getValue()`
          - `ScrollPaneAdjustable.setValue(int)`

      - ##### visibleAmount

            int visibleAmount

        The size of the visible portion of this scrollbar. This value can only be set by the `ScrollPane`.
        See Also:
          - `ScrollPaneAdjustable.getVisibleAmount()`
          - `ScrollPaneAdjustable.setSpan(int, int, int)`

  - ### Class java.awt.SystemColor

    class SystemColor extends Color implements Serializable
    serialVersionUID:
      4503142729533789064L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        The design of the `SystemColor` class assumes that the `SystemColor` object instances stored in the static final fields above are the only instances that can be used by developers. This method helps maintain those limits on instantiation by using the index stored in the value field of the serialized form of the object to replace the serialized object with the equivalent static object constant field of `SystemColor`. See the `SystemColor.writeReplace()` method for more information on the serialized form of these objects.

      - ##### writeReplace

        private Object writeReplace() throws ObjectStreamException
        Returns a specialized version of the `SystemColor` object for writing to the serialized stream.
        Serial Data:
          The value field of a serialized `SystemColor` object contains the array index of the system color instead of the rgb data for the system color. This index is used by the `SystemColor.readResolve()` method to resolve the deserialized objects back to the original static constant versions to ensure unique instances of each `SystemColor` object.
        Throws:
          `ObjectStreamException` - if a new object replacing this object could not be created

  - ### Class java.awt.TextArea

    class TextArea extends TextComponent implements Serializable
    serialVersionUID:
      3692302836626095722L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Read the ObjectInputStream.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `GraphicsEnvironment.isHeadless()`

    - #### Serialized Fields

      - ##### columns

            int columns

        The number of columns in the `TextArea`. A column is an approximate average character width that is platform-dependent. This parameter will determine the text area's width. Guaranteed to be non-negative.
        See Also:
          - `TextArea.setColumns(int)`
          - `TextArea.getColumns()`

      - ##### rows

            int rows

        The number of rows in the `TextArea`. This parameter will determine the text area's height. Guaranteed to be non-negative.
        See Also:
          - `TextArea.getRows()`
          - `TextArea.setRows(int)`

      - ##### scrollbarVisibility

            int scrollbarVisibility

        Determines which scrollbars are created for the text area. It can be one of four values : `SCROLLBARS_BOTH` = both scrollbars.
        `SCROLLBARS_HORIZONTAL_ONLY` = Horizontal bar only.
        `SCROLLBARS_VERTICAL_ONLY` = Vertical bar only.
        `SCROLLBARS_NONE` = No scrollbars.
        See Also:
          - `TextArea.getScrollbarVisibility()`

      - ##### textAreaSerializedDataVersion

            int textAreaSerializedDataVersion

        The textArea Serialized Data Version.

  - ### Class java.awt.TextArea.AccessibleAWTTextArea

    class AccessibleAWTTextArea extends TextComponent.AccessibleAWTTextComponent implements Serializable
    serialVersionUID:
      3472827823632144419L

  - ### Class java.awt.TextComponent

    class TextComponent extends Component implements Serializable
    serialVersionUID:
      -2214773872412987419L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Read the ObjectInputStream, and if it isn't null, add a listener to receive text events fired by the TextComponent. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `TextComponent.removeTextListener(java.awt.event.TextListener)`
          - `TextComponent.addTextListener(java.awt.event.TextListener)`
          - `GraphicsEnvironment.isHeadless()`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream. Writes a list of serializable TextListener(s) as optional data. The non-serializable TextListener(s) are detected and no attempt is made to serialize them.
        Serial Data:
          Null terminated sequence of zero or more pairs. A pair consists of a String and Object. The String indicates the type of object and is one of the following : textListenerK indicating and TextListener object.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`
          - `Component.textListenerK`

    - #### Serialized Fields

      - ##### backgroundSetByClientCode

            boolean backgroundSetByClientCode

        A flag used to tell whether the background has been set by developer code (as opposed to AWT code). Used to determine the background color of non-editable TextComponents.

      - ##### checkForEnableIM

            boolean checkForEnableIM

        Whether support of input methods should be checked or not.

      - ##### editable

            boolean editable

        A boolean indicating whether or not this `TextComponent` is editable. It will be `true` if the text component is editable and `false` if not.
        See Also:
          - `TextComponent.isEditable()`

      - ##### selectionEnd

            int selectionEnd

        The selection refers to the selected text, and the `selectionEnd` is the end position of the selected text.
        See Also:
          - `TextComponent.getSelectionEnd()`
          - `TextComponent.setSelectionEnd(int)`

      - ##### selectionStart

            int selectionStart

        The selection refers to the selected text, and the `selectionStart` is the start position of the selected text.
        See Also:
          - `TextComponent.getSelectionStart()`
          - `TextComponent.setSelectionStart(int)`

      - ##### text

            String text

        The value of the text. A `null` value is the same as "".
        See Also:
          - `TextComponent.setText(String)`
          - `TextComponent.getText()`

      - ##### textComponentSerializedDataVersion

            int textComponentSerializedDataVersion

        The textComponent SerializedDataVersion.

  - ### Class java.awt.TextComponent.AccessibleAWTTextComponent

    class AccessibleAWTTextComponent extends Component.AccessibleAWTComponent implements Serializable
    serialVersionUID:
      3631432373506317811L

  - ### Class java.awt.TextField

    class TextField extends TextComponent implements Serializable
    serialVersionUID:
      -2966288784432217853L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Read the ObjectInputStream and if it isn't null, add a listener to receive action events fired by the TextField. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `TextField.removeActionListener(ActionListener)`
          - `TextField.addActionListener(ActionListener)`
          - `GraphicsEnvironment.isHeadless()`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream. Writes a list of serializable ActionListener(s) as optional data. The non-serializable ActionListener(s) are detected and no attempt is made to serialize them.
        Serial Data:
          Null terminated sequence of zero or more pairs. A pair consists of a String and Object. The String indicates the type of object and is one of the following : ActionListenerK indicating and ActionListener object.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`
          - `Component.actionListenerK`

    - #### Serialized Fields

      - ##### columns

            int columns

        The number of columns in the text field. A column is an approximate average character width that is platform-dependent. Guaranteed to be non-negative.
        See Also:
          - `TextField.setColumns(int)`
          - `TextField.getColumns()`

      - ##### echoChar

            char echoChar

        The echo character, which is used when the user wishes to disguise the characters typed into the text field. The disguises are removed if echoChar = `0`.
        See Also:
          - `TextField.getEchoChar()`
          - `TextField.setEchoChar(char)`
          - `TextField.echoCharIsSet()`

      - ##### textFieldSerializedDataVersion

            int textFieldSerializedDataVersion

        The textField Serialized Data Version.

  - ### Class java.awt.TextField.AccessibleAWTTextField

    class AccessibleAWTTextField extends TextComponent.AccessibleAWTTextComponent implements Serializable
    serialVersionUID:
      6219164359235943158L

  - ### Class java.awt.Window

    class Window extends Container implements Serializable
    serialVersionUID:
      4497834738069338734L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException, HeadlessException
        Reads the `ObjectInputStream` and an optional list of listeners to receive various events fired by the component; also reads a list of (possibly `null`) child windows. Unrecognized keys or values will be ignored.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
          `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
        See Also:
          - `GraphicsEnvironment.isHeadless()`
          - `Window.writeObject(java.io.ObjectOutputStream)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream. Writes a list of serializable `WindowListener`s and `WindowFocusListener`s as optional data. Writes a list of child windows as optional data. Writes a list of icon images as optional data
        Serial Data:
          `null` terminated sequence of 0 or more pairs; the pair consists of a `String` and `Object`; the `String` indicates the type of object and is one of the following: `windowListenerK` indicating a `WindowListener` object; `windowFocusWindowK` indicating a `WindowFocusListener` object; `ownedWindowK` indicating a child `Window` object
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        See Also:
          - `AWTEventMulticaster.save(java.io.ObjectOutputStream, java.lang.String, java.util.EventListener)`
          - `Component.windowListenerK`
          - `Component.windowFocusListenerK`
          - `Component.ownedWindowK`
          - `Window.readObject(ObjectInputStream)`

    - #### Serialized Fields

      - ##### alwaysOnTop

            boolean alwaysOnTop

        A boolean value representing Window always-on-top state
        Since:
          1.5
        See Also:
          - `Window.setAlwaysOnTop(boolean)`
          - `Window.isAlwaysOnTop()`

      - ##### autoRequestFocus

            boolean autoRequestFocus

        Indicates whether this window should receive focus on subsequently being shown (with a call to `setVisible(true)`), or being moved to the front (with a call to `toFront()`).
        Since:
          1.7
        See Also:
          - `Window.setAutoRequestFocus(boolean)`
          - `Window.isAutoRequestFocus()`

      - ##### focusableWindowState

            boolean focusableWindowState

        Indicates whether this Window can become the focused Window.
        Since:
          1.4
        See Also:
          - `Window.getFocusableWindowState()`
          - `Window.setFocusableWindowState(boolean)`

      - ##### focusMgr

            java.awt.FocusManager focusMgr

        Unused. Maintained for serialization backward-compatibility.
        Since:
          1.2

      - ##### locationByPlatform

            boolean locationByPlatform

        `true` if this Window should appear at the default location, `false` if at the current location.

      - ##### modalExclusionType

            Dialog.ModalExclusionType modalExclusionType

        Since:
          1.6
        See Also:
          - `Dialog.ModalExclusionType`
          - `Window.getModalExclusionType()`
          - `Window.setModalExclusionType(java.awt.Dialog.ModalExclusionType)`

      - ##### opacity

            float opacity

        The opacity level of the window
        Since:
          1.7
        See Also:
          - `Window.setOpacity(float)`
          - `Window.getOpacity()`

      - ##### shape

            Shape shape

        The shape assigned to this window. This field is set to `null` if no shape is set (rectangular window).
        Since:
          1.7
        See Also:
          - `Window.getShape()`
          - `Window.setShape(Shape)`

      - ##### state

            int state

        An Integer value representing the Window State.
        Since:
          1.2
        See Also:
          - `Window.show()`

      - ##### syncLWRequests

            boolean syncLWRequests

        Focus transfers should be synchronous for lightweight component requests.

      - ##### type

            Window.Type type

        Window type. Synchronization: ObjectLock

      - ##### warningString

            String warningString

        This represents the warning message that is to be displayed in a non secure window. ie : a window that has a security manager installed that denies `AWTPermission("showWindowWithoutWarningBanner")`. This message can be displayed anywhere in the window.
        See Also:
          - `Window.getWarningString()`

      - ##### windowSerializedDataVersion

            int windowSerializedDataVersion

        The window serialized data version.

  - ### Class java.awt.Window.AccessibleAWTWindow

    class AccessibleAWTWindow extends Container.AccessibleAWTContainer implements Serializable
    serialVersionUID:
      4215068635060671780L

- ## Package java.awt.color

  - ### Exception Class java.awt.color.CMMException

    class CMMException extends RuntimeException implements Serializable
    serialVersionUID:
      5775558044142994965L

  - ### Class java.awt.color.ColorSpace

    class ColorSpace extends Object implements Serializable
    serialVersionUID:
      -409452704308689724L

    - #### Serialized Fields

      - ##### numComponents

            int numComponents

        The number of components in the color space.

      - ##### type

            int type

        One of the `ColorSpace` type constants.

  - ### Class java.awt.color.ICC_ColorSpace

    class ICC_ColorSpace extends ColorSpace implements Serializable
    serialVersionUID:
      3455889114070431483L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Validate an ICC_ColorSpace read from an object input stream.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### diffMinMax

            float[] diffMinMax

        Difference between min and max values.

      - ##### invDiffMinMax

            float[] invDiffMinMax

        Inverted value of the difference between min and max values.

      - ##### maxVal

            float[] maxVal

        The minimum normalized component values.

      - ##### minVal

            float[] minVal

        The maximum normalized component values.

      - ##### needScaleInit

            boolean needScaleInit

        Whether the values should be scaled or not.

      - ##### thisProfile

            ICC_Profile thisProfile

        The specified `ICC_Profile` object.

  - ### Class java.awt.color.ICC_Profile

    class ICC_Profile extends Object implements Serializable
    serialVersionUID:
      -3938515861990936766L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reads default serializable fields from the stream. Reads from the stream a string and an array of bytes as additional data.
        Serial Data:
          the `String` is the name of one of `CS_*` constants defined in the `ColorSpace` class if the profile object is a profile for a predefined color space (for example `"CS_sRGB"`). The string is `null` otherwise.

          The `byte[]` array is the profile data for the profile. It will usually be `null` for the predefined profiles.

          If the string is recognized as a constant name for predefined color space the object will be resolved into profile obtained with `getInstance(int cspace)` and the profile data are ignored. Otherwise the object will be resolved into profile obtained with `getInstance(byte[] data)`.

        Parameters:
          `s` - stream used for deserialization
        Throws:
          `IOException` - thrown by `ObjectInputStream`
          `ClassNotFoundException` - thrown by `ObjectInputStream`
        See Also:
          - `ICC_Profile.readResolve()`
          - `ICC_Profile.getInstance(int)`
          - `ICC_Profile.getInstance(byte[])`

      - ##### readResolve

        protected Object readResolve() throws ObjectStreamException
        Resolves instances being deserialized into instances registered with CMM.
        Throws:
          `ObjectStreamException` - never thrown, but mandated by the serialization spec
        Since:
          1.3

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to the stream. Writes a string and an array of bytes to the stream as additional data.
        Serial Data:
          the `String` is the name of one of `CS_*` constants defined in the `ColorSpace` class if the profile object is a profile for a predefined color space (for example `"CS_sRGB"`). The string is `null` otherwise.

          The `byte[]` array is the profile data for the profile. For predefined color spaces `null` is written instead of the profile data. If in the future versions of Java API new predefined color spaces will be added, future versions of this class may choose to write for new predefined color spaces not only the color space name, but the profile data as well so that older versions could still deserialize the object.

        Parameters:
          `s` - stream used for serialization
        Throws:
          `IOException` - thrown by `ObjectInputStream`

    - #### Serialized Fields

      - ##### iccProfileSerializedDataVersion

            int iccProfileSerializedDataVersion

        Version of the format of additional serialized data in the stream. Version `1` corresponds to Java 2 Platform, v1.3.
        Since:
          1.3

  - ### Class java.awt.color.ICC_ProfileGray

    class ICC_ProfileGray extends ICC_Profile implements Serializable
    serialVersionUID:
      -1124721290732002649L

  - ### Class java.awt.color.ICC_ProfileRGB

    class ICC_ProfileRGB extends ICC_Profile implements Serializable
    serialVersionUID:
      8505067385152579334L

  - ### Exception Class java.awt.color.ProfileDataException

    class ProfileDataException extends RuntimeException implements Serializable
    serialVersionUID:
      7286140888240322498L

- ## Package java.awt.datatransfer

  - ### Class java.awt.datatransfer.DataFlavor

    class DataFlavor extends Object implements Externalizable
    serialVersionUID:
      8367026044764648243L

    - #### Serialization Methods

      - ##### readExternal

        public void readExternal(ObjectInput is) throws IOException, ClassNotFoundException
        Restores this `DataFlavor` from a Serialized state.
        Parameters:
          `is` - the stream to read data from in order to restore the object
        Throws:
          `IOException` - if I/O errors occur
          `ClassNotFoundException` - If the class for an object being restored cannot be found.

      - ##### writeExternal

        public void writeExternal(ObjectOutput os) throws IOException
        Serializes this `DataFlavor`.
        Parameters:
          `os` - the stream to write the object to
        Throws:
          `IOException` - Includes any I/O exceptions that may occur

  - ### Class java.awt.datatransfer.FlavorEvent

    class FlavorEvent extends EventObject implements Serializable
    serialVersionUID:
      -5842664112252414548L

  - ### Exception Class java.awt.datatransfer.UnsupportedFlavorException

    class UnsupportedFlavorException extends Exception implements Serializable
    serialVersionUID:
      5383814944251665601L

- ## Package java.awt.desktop

  - ### Class java.awt.desktop.AboutEvent

    class AboutEvent extends AppEvent implements Serializable
    serialVersionUID:
      -5987180734802756477L

  - ### Class java.awt.desktop.AppEvent

    class AppEvent extends EventObject implements Serializable
    serialVersionUID:
      -5958503993556009432L

  - ### Class java.awt.desktop.AppForegroundEvent

    class AppForegroundEvent extends AppEvent implements Serializable
    serialVersionUID:
      -5513582555740533911L

  - ### Class java.awt.desktop.AppHiddenEvent

    class AppHiddenEvent extends AppEvent implements Serializable
    serialVersionUID:
      2637465279476429224L

  - ### Class java.awt.desktop.AppReopenedEvent

    class AppReopenedEvent extends AppEvent implements Serializable
    serialVersionUID:
      1503238361530407990L

  - ### Class java.awt.desktop.FilesEvent

    class FilesEvent extends AppEvent implements Serializable
    serialVersionUID:
      5271763715462312871L

    - #### Serialized Fields

      - ##### files

            List<File> files

        The list of files.

  - ### Class java.awt.desktop.OpenFilesEvent

    class OpenFilesEvent extends FilesEvent implements Serializable
    serialVersionUID:
      -3982871005867718956L

    - #### Serialized Fields

      - ##### searchTerm

            String searchTerm

        The search term used to find the files.

  - ### Class java.awt.desktop.OpenURIEvent

    class OpenURIEvent extends AppEvent implements Serializable
    serialVersionUID:
      221209100935933476L

    - #### Serialized Fields

      - ##### uri

            URI uri

        The `URI` the app was asked to open.

  - ### Class java.awt.desktop.PreferencesEvent

    class PreferencesEvent extends AppEvent implements Serializable
    serialVersionUID:
      -6398607097086476160L

  - ### Class java.awt.desktop.PrintFilesEvent

    class PrintFilesEvent extends FilesEvent implements Serializable
    serialVersionUID:
      -5752560876153618618L

  - ### Class java.awt.desktop.QuitEvent

    class QuitEvent extends AppEvent implements Serializable
    serialVersionUID:
      -256100795532403146L

  - ### Class java.awt.desktop.ScreenSleepEvent

    class ScreenSleepEvent extends AppEvent implements Serializable
    serialVersionUID:
      7521606180376544150L

  - ### Class java.awt.desktop.SystemSleepEvent

    class SystemSleepEvent extends AppEvent implements Serializable
    serialVersionUID:
      11372269824930549L

  - ### Class java.awt.desktop.UserSessionEvent

    class UserSessionEvent extends AppEvent implements Serializable
    serialVersionUID:
      6747138462796569055L

    - #### Serialized Fields

      - ##### reason

            UserSessionEvent.Reason reason

        The reason of the user session change.

- ## Package java.awt.dnd

  - ### Class java.awt.dnd.DragGestureEvent

    class DragGestureEvent extends EventObject implements Serializable
    serialVersionUID:
      9080172649166731306L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Deserializes this `DragGestureEvent`. This method first performs default deserialization for all non-`transient` fields. An attempt is then made to deserialize this object's `List` of gesture events as well. This is first attempted by deserializing the field `events`, because, in releases prior to 1.4, a non-`transient` field of this name stored the `List` of gesture events. If this fails, the next object in the stream is used instead. If the resulting `List` is `null`, this object's `List` of gesture events is set to an empty `List`.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
        Since:
          1.4

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Serializes this `DragGestureEvent`. Performs default serialization and then writes out this object's `List` of gesture events if and only if the `List` can be serialized. If not, `null` is written instead. In this case, a `DragGestureEvent` created from the resulting deserialized stream will contain an empty `List` of gesture events.
        Serial Data:
          The default serializable fields, in alphabetical order, followed by either a `List` instance, or `null`.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        Since:
          1.4

    - #### Serialized Fields

      - ##### action

            int action

        The user's preferred action.

      - ##### component

            Component component

        The Component associated with this DragGestureEvent.

      - ##### dragSource

            DragSource dragSource

        The DragSource associated with this DragGestureEvent.

      - ##### origin

            Point origin

        The origin of the drag.

  - ### Class java.awt.dnd.DragGestureRecognizer

    class DragGestureRecognizer extends Object implements Serializable
    serialVersionUID:
      8996673345831063337L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Deserializes this `DragGestureRecognizer`. This method first performs default deserialization for all non-`transient` fields. This object's `DragGestureListener` is then deserialized as well by using the next object in the stream.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
        Since:
          1.4

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Serializes this `DragGestureRecognizer`. This method first performs default serialization. Then, this object's `DragGestureListener` is written out if and only if it can be serialized. If not, `null` is written instead.
        Serial Data:
          The default serializable fields, in alphabetical order, followed by either a `DragGestureListener`, or `null`.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        Since:
          1.4

    - #### Serialized Fields

      - ##### component

            Component component

        The `Component` associated with this `DragGestureRecognizer`.

      - ##### dragSource

            DragSource dragSource

        The `DragSource` associated with this `DragGestureRecognizer`.

      - ##### events

            ArrayList<InputEvent> events

        The list of events (in order) that the `DragGestureRecognizer` "recognized" as a "gesture" that triggers a drag.

      - ##### sourceActions

            int sourceActions

        An `int` representing the type(s) of action(s) used in this Drag and Drop operation.

  - ### Class java.awt.dnd.DragSource

    class DragSource extends Object implements Serializable
    serialVersionUID:
      6236096958971414066L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Deserializes this `DragSource`. This method first performs default deserialization. Next, this object's `FlavorMap` is deserialized by using the next object in the stream. If the resulting `FlavorMap` is `null`, this object's `FlavorMap` is set to the default FlavorMap for this thread's `ClassLoader`. Next, this object's listeners are deserialized by reading a `null`-terminated sequence of 0 or more key/value pairs from the stream:
        - If a key object is a `String` equal to `dragSourceListenerK`, a `DragSourceListener` is deserialized using the corresponding value object and added to this `DragSource`.
        - If a key object is a `String` equal to `dragSourceMotionListenerK`, a `DragSourceMotionListener` is deserialized using the corresponding value object and added to this `DragSource`.
        - Otherwise, the key/value pair is skipped.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
        Since:
          1.4
        See Also:
          - `SystemFlavorMap.getDefaultFlavorMap()`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Serializes this `DragSource`. This method first performs default serialization. Next, it writes out this object's `FlavorMap` if and only if it can be serialized. If not, `null` is written instead. Next, it writes out `Serializable` listeners registered with this object. Listeners are written in a `null`-terminated sequence of 0 or more pairs. The pair consists of a `String` and an `Object`; the `String` indicates the type of the `Object` and is one of the following:
        - `dragSourceListenerK` indicating a `DragSourceListener` object;
        - `dragSourceMotionListenerK` indicating a `DragSourceMotionListener` object.
        Serial Data:
          Either a `FlavorMap` instance, or `null`, followed by a `null`-terminated sequence of 0 or more pairs; the pair consists of a `String` and an `Object`; the `String` indicates the type of the `Object` and is one of the following:
          - `dragSourceListenerK` indicating a `DragSourceListener` object;
          - `dragSourceMotionListenerK` indicating a `DragSourceMotionListener` object.
          .
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        Since:
          1.4

  - ### Class java.awt.dnd.DragSourceContext

    class DragSourceContext extends Object implements Serializable
    serialVersionUID:
      -115407898692194719L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Deserializes this `DragSourceContext`. This method first performs default deserialization for all non-`transient` fields. This object's `Transferable` and `DragSourceListener` are then deserialized as well by using the next two objects in the stream. If the resulting `Transferable` is `null`, this object's `Transferable` is set to a dummy `Transferable` which supports no `DataFlavor`s.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
        Since:
          1.4

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Serializes this `DragSourceContext`. This method first performs default serialization. Next, this object's `Transferable` is written out if and only if it can be serialized. If not, `null` is written instead. In this case, a `DragSourceContext` created from the resulting deserialized stream will contain a dummy `Transferable` which supports no `DataFlavor`s. Finally, this object's `DragSourceListener` is written out if and only if it can be serialized. If not, `null` is written instead.
        Serial Data:
          The default serializable fields, in alphabetical order, followed by either a `Transferable` instance, or `null`, followed by either a `DragSourceListener` instance, or `null`.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        Since:
          1.4

    - #### Serialized Fields

      - ##### cursor

            Cursor cursor

        The current drag cursor.

      - ##### sourceActions

            int sourceActions

        A bitwise mask of `DnDConstants` that represents the set of drop actions supported by the drag source for the drag operation associated with this `DragSourceContext.`

      - ##### trigger

            DragGestureEvent trigger

        The event which triggered the start of the drag.

      - ##### useCustomCursor

            boolean useCustomCursor

        `true` if the custom drag cursor is used instead of the default one.

  - ### Class java.awt.dnd.DragSourceDragEvent

    class DragSourceDragEvent extends DragSourceEvent implements Serializable
    serialVersionUID:
      481346297933902471L

    - #### Serialized Fields

      - ##### dropAction

            int dropAction

        The user drop action.

      - ##### gestureModifiers

            int gestureModifiers

        The state of the input device modifiers associated with the user gesture.

      - ##### invalidModifiers

            boolean invalidModifiers

        Indicates whether the `gestureModifiers` are invalid.

      - ##### targetActions

            int targetActions

        The target drop action.

  - ### Class java.awt.dnd.DragSourceDropEvent

    class DragSourceDropEvent extends DragSourceEvent implements Serializable
    serialVersionUID:
      -5571321229470821891L

    - #### Serialized Fields

      - ##### dropAction

            int dropAction

        The drop action.

      - ##### dropSuccess

            boolean dropSuccess

        `true` if the drop was successful.

  - ### Class java.awt.dnd.DragSourceEvent

    class DragSourceEvent extends EventObject implements Serializable
    serialVersionUID:
      -763287114604032641L

    - #### Serialized Fields

      - ##### locationSpecified

            boolean locationSpecified

        The `boolean` indicating whether the cursor location is specified for this event.

      - ##### x

            int x

        The horizontal coordinate for the cursor location at the moment this event occurred if the cursor location is specified for this event; otherwise zero.

      - ##### y

            int y

        The vertical coordinate for the cursor location at the moment this event occurred if the cursor location is specified for this event; otherwise zero.

  - ### Class java.awt.dnd.DropTarget

    class DropTarget extends Object implements Serializable
    serialVersionUID:
      -6283860791671019047L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Deserializes this `DropTarget`. This method first performs default deserialization for all non-`transient` fields. An attempt is then made to deserialize this object's `DropTargetListener` as well. This is first attempted by deserializing the field `dtListener`, because, in releases prior to 1.4, a non-`transient` field of this name stored the `DropTargetListener`. If this fails, the next object in the stream is used instead.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
        Since:
          1.4

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Serializes this `DropTarget`. Performs default serialization, and then writes out this object's `DropTargetListener` if and only if it can be serialized. If not, `null` is written instead.
        Serial Data:
          The default serializable fields, in alphabetical order, followed by either a `DropTargetListener` instance, or `null`.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        Since:
          1.4

    - #### Serialized Fields

      - ##### actions

            int actions

        Default permissible actions supported by this DropTarget.
        See Also:
          - `DropTarget.setDefaultActions(int)`
          - `DropTarget.getDefaultActions()`

      - ##### active

            boolean active

        `true` if the DropTarget is accepting Drag & Drop operations.

      - ##### component

            Component component

        The Component associated with this DropTarget.

      - ##### dropTargetContext

            DropTargetContext dropTargetContext

        The DropTargetContext associated with this DropTarget.

  - ### Class java.awt.dnd.DropTargetContext

    class DropTargetContext extends Object implements Serializable
    serialVersionUID:
      -634158968993743371L

    - #### Serialized Fields

      - ##### dropTarget

            DropTarget dropTarget

        The DropTarget associated with this DropTargetContext.

  - ### Class java.awt.dnd.DropTargetDragEvent

    class DropTargetDragEvent extends DropTargetEvent implements Serializable
    serialVersionUID:
      -8422265619058953682L

    - #### Serialized Fields

      - ##### actions

            int actions

        The source drop actions.

      - ##### dropAction

            int dropAction

        The user drop action.

      - ##### location

            Point location

        The location of the drag cursor's hotspot in Component coordinates.

  - ### Class java.awt.dnd.DropTargetDropEvent

    class DropTargetDropEvent extends DropTargetEvent implements Serializable
    serialVersionUID:
      -1721911170440459322L

    - #### Serialized Fields

      - ##### actions

            int actions

        The source drop actions.

      - ##### dropAction

            int dropAction

        The user drop action.

      - ##### isLocalTx

            boolean isLocalTx

        `true` if the source is in the same JVM as the target.

      - ##### location

            Point location

        The location of the drag cursor's hotspot in Component coordinates.

  - ### Class java.awt.dnd.DropTargetEvent

    class DropTargetEvent extends EventObject implements Serializable
    serialVersionUID:
      2821229066521922993L

    - #### Serialized Fields

      - ##### context

            DropTargetContext context

        The `DropTargetContext` associated with this `DropTargetEvent`.

  - ### Exception Class java.awt.dnd.InvalidDnDOperationException

    class InvalidDnDOperationException extends IllegalStateException implements Serializable
    serialVersionUID:
      -6062568741193956678L

  - ### Class java.awt.dnd.MouseDragGestureRecognizer

    class MouseDragGestureRecognizer extends DragGestureRecognizer implements Serializable
    serialVersionUID:
      6220099344182281120L

- ## Package java.awt.event

  - ### Class java.awt.event.ActionEvent

    class ActionEvent extends AWTEvent implements Serializable
    serialVersionUID:
      -7671078796273832149L

    - #### Serialized Fields

      - ##### actionCommand

            String actionCommand

        The nonlocalized string that gives more details of what actually caused the event. This information is very specific to the component that fired it.
        See Also:
          - `ActionEvent.getActionCommand()`

      - ##### modifiers

            int modifiers

        This represents the key modifier that was selected, and is used to determine the state of the selected key. If no modifier has been selected it will default to zero.
        See Also:
          - `ActionEvent.getModifiers()`

      - ##### when

            long when

        Timestamp of when this event occurred. Because an ActionEvent is a high- level, semantic event, the timestamp is typically the same as an underlying InputEvent.
        See Also:
          - `ActionEvent.getWhen()`

  - ### Class java.awt.event.AdjustmentEvent

    class AdjustmentEvent extends AWTEvent implements Serializable
    serialVersionUID:
      5700290645205279921L

    - #### Serialized Fields

      - ##### adjustable

            Adjustable adjustable

        The adjustable object that fired the event.
        See Also:
          - `AdjustmentEvent.getAdjustable()`

      - ##### adjustmentType

            int adjustmentType

        The `adjustmentType` describes how the adjustable object value has changed. This value can be increased/decreased by a block or unit amount where the block is associated with page increments/decrements, and a unit is associated with line increments/decrements.
        See Also:
          - `AdjustmentEvent.getAdjustmentType()`

      - ##### isAdjusting

            boolean isAdjusting

        The `isAdjusting` is true if the event is one of the series of multiple adjustment events.
        Since:
          1.4
        See Also:
          - `AdjustmentEvent.getValueIsAdjusting()`

      - ##### value

            int value

        `value` will contain the new value of the adjustable object. This value will always be in a range associated adjustable object.
        See Also:
          - `AdjustmentEvent.getValue()`

  - ### Class java.awt.event.ComponentEvent

    class ComponentEvent extends AWTEvent implements Serializable
    serialVersionUID:
      8101406823902992965L

  - ### Class java.awt.event.ContainerEvent

    class ContainerEvent extends ComponentEvent implements Serializable
    serialVersionUID:
      -4114942250539772041L

    - #### Serialized Fields

      - ##### child

            Component child

        The non-null component that is being added or removed from the Container.
        See Also:
          - `ContainerEvent.getChild()`

  - ### Class java.awt.event.FocusEvent

    class FocusEvent extends ComponentEvent implements Serializable
    serialVersionUID:
      523753786457416396L

    - #### Serialization Methods

      - ##### readResolve

        Object readResolve() throws ObjectStreamException
        Checks if this deserialized `FocusEvent` instance is compatible with the current specification which implies that focus event has non-null `cause` value. If the check fails a new `FocusEvent` instance is returned which `cause` field equals to `FocusEvent.Cause.UNKNOWN` and its other fields have the same values as in this `FocusEvent` instance.
        Throws:
          `ObjectStreamException` - if a new object replacing this object could not be created
        Since:
          9
        See Also:
          - `FocusEvent.cause`

    - #### Serialized Fields

      - ##### cause

            FocusEvent.Cause cause

        A focus event has the reason why this event was generated. The cause is set during the focus event creation.
        Since:
          9
        See Also:
          - `FocusEvent.getCause()`

      - ##### temporary

            boolean temporary

        A focus event can have two different levels, permanent and temporary. It will be set to true if some operation takes away the focus temporarily and intends on getting it back once the event is completed. Otherwise it will be set to false.
        See Also:
          - `FocusEvent.isTemporary()`

  - ### Class java.awt.event.HierarchyEvent

    class HierarchyEvent extends AWTEvent implements Serializable
    serialVersionUID:
      -5337576970038043990L

    - #### Serialized Fields

      - ##### changed

            Component changed

        The `Component` at the top of the hierarchy which was changed.

      - ##### changedParent

            Container changedParent

        The parent of the `changed` component. This may be the parent before or after the change, depending on the type of change.

      - ##### changeFlags

            long changeFlags

        A bitmask which indicates the type(s) of the `HIERARCHY_CHANGED` events represented in this event object. For information on allowable values, see the class description for `HierarchyEvent`

  - ### Class java.awt.event.InputEvent

    class InputEvent extends ComponentEvent implements Serializable
    serialVersionUID:
      -2482525981698309786L

    - #### Serialized Fields

      - ##### modifiers

            int modifiers

        The state of the modifier mask at the time the input event was fired.
        See Also:
          - `InputEvent.getModifiers()`
          - `InputEvent.getModifiersEx()`
          - `KeyEvent`
          - `MouseEvent`

      - ##### when

            long when

        The input event's Time stamp in UTC format. The time stamp indicates when the input event was created.
        See Also:
          - `InputEvent.getWhen()`

  - ### Class java.awt.event.InputMethodEvent

    class InputMethodEvent extends AWTEvent implements Serializable
    serialVersionUID:
      4727190874778922661L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Initializes the `when` field if it is not present in the object input stream. In that case, the field will be initialized by invoking `EventQueue.getMostRecentEventTime()`.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### when

            long when

        The time stamp that indicates when the event was created.
        Since:
          1.4
        See Also:
          - `InputMethodEvent.getWhen()`

  - ### Class java.awt.event.InvocationEvent

    class InvocationEvent extends AWTEvent implements Serializable
    serialVersionUID:
      436056344909459450L

    - #### Serialized Fields

      - ##### catchExceptions

            boolean catchExceptions

        Set to true if dispatch() catches Throwable and stores it in the exception instance variable. If false, Throwables are propagated up to the EventDispatchThread's dispatch loop.

      - ##### dispatched

            boolean dispatched

        Indicates whether the `run()` method of the `runnable` was executed or not.
        Since:
          1.7
        See Also:
          - `InvocationEvent.isDispatched()`

      - ##### exception

            Exception exception

        The (potentially null) Exception thrown during execution of the Runnable.run() method. This variable will also be null if a particular instance does not catch exceptions.

      - ##### listener

            Runnable listener

        The (potentially null) Runnable whose run() method will be called immediately after the event was dispatched or disposed.
        Since:
          1.8
        See Also:
          - `InvocationEvent.isDispatched()`

      - ##### notifier

            Object notifier

        The (potentially null) Object whose notifyAll() method will be called immediately after the Runnable.run() method has returned or thrown an exception or after the event was disposed.
        See Also:
          - `InvocationEvent.isDispatched()`

      - ##### runnable

            Runnable runnable

        The Runnable whose run() method will be called.

      - ##### throwable

            Throwable throwable

        The (potentially null) Throwable thrown during execution of the Runnable.run() method. This variable will also be null if a particular instance does not catch exceptions.

      - ##### when

            long when

        The timestamp of when this event occurred.
        See Also:
          - `InvocationEvent.getWhen()`

  - ### Class java.awt.event.ItemEvent

    class ItemEvent extends AWTEvent implements Serializable
    serialVersionUID:
      -608708132447206933L

    - #### Serialized Fields

      - ##### item

            Object item

        The item whose selection state has changed.
        See Also:
          - `ItemEvent.getItem()`

      - ##### stateChange

            int stateChange

        `stateChange` indicates whether the `item` was selected or deselected.
        See Also:
          - `ItemEvent.getStateChange()`

  - ### Class java.awt.event.KeyEvent

    class KeyEvent extends InputEvent implements Serializable
    serialVersionUID:
      -2352130953028126954L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Sets new modifiers by the old ones. The key modifiers override overlapping mouse modifiers.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### isProxyActive

            boolean isProxyActive

        Stores the state of native event dispatching system - true, if when the event was created event proxying mechanism was active - false, if it was inactive Used in Component.dispatchEventImpl to correctly dispatch events when proxy is active

      - ##### keyChar

            char keyChar

        `keyChar` is a valid unicode character that is fired by a key or a key combination on a keyboard.
        See Also:
          - `KeyEvent.getKeyChar()`
          - `KeyEvent.setKeyChar(char)`

      - ##### keyCode

            int keyCode

        The unique value assigned to each of the keys on the keyboard. There is a common set of key codes that can be fired by most keyboards. The symbolic name for a key code should be used rather than the code value itself.
        See Also:
          - `KeyEvent.getKeyCode()`
          - `KeyEvent.setKeyCode(int)`

      - ##### keyLocation

            int keyLocation

        The location of the key on the keyboard. Some keys occur more than once on a keyboard, e.g. the left and right shift keys. Additionally, some keys occur on the numeric keypad. This variable is used to distinguish such keys. The only legal values are `KEY_LOCATION_UNKNOWN`, `KEY_LOCATION_STANDARD`, `KEY_LOCATION_LEFT`, `KEY_LOCATION_RIGHT`, and `KEY_LOCATION_NUMPAD`.
        See Also:
          - `KeyEvent.getKeyLocation()`

      - ##### originalSource

            Component originalSource

        The original event source. Event source can be changed during processing, but in some cases we need to be able to obtain original source.
        Since:
          1.8

  - ### Class java.awt.event.MouseEvent

    class MouseEvent extends InputEvent implements Serializable
    serialVersionUID:
      -991214153494842848L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Sets new modifiers by the old ones.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### button

            int button

        Indicates which, if any, of the mouse buttons has changed state. The valid values are ranged from 0 to the value returned by the `MouseInfo.getNumberOfButtons()` method. This range already includes constants `NOBUTTON`, `BUTTON1`, `BUTTON2`, and `BUTTON3` if these buttons are present. So it is allowed to use these constants too. For example, for a mouse with two buttons this field may contain the following values:
        - 0 (`NOBUTTON`)
        - 1 (`BUTTON1`)
        - 2 (`BUTTON2`)
        If a mouse has 5 buttons, this field may contain the following values:
        - 0 (`NOBUTTON`)
        - 1 (`BUTTON1`)
        - 2 (`BUTTON2`)
        - 3 (`BUTTON3`)
        - 4
        - 5
        If support for extended mouse buttons is `Toolkit.areExtraMouseButtonsEnabled()` disabled by Java then the field may not contain the value larger than `BUTTON3`.
        See Also:
          - `MouseEvent.getButton()`
          - `Toolkit.areExtraMouseButtonsEnabled()`

      - ##### causedByTouchEvent

            boolean causedByTouchEvent

        Indicates whether the event is a result of a touch event.

      - ##### clickCount

            int clickCount

        Indicates the number of quick consecutive clicks of a mouse button. clickCount will be valid for only three mouse events :
        `MOUSE_CLICKED`, `MOUSE_PRESSED` and `MOUSE_RELEASED`. For the above, the `clickCount` will be at least 1. For all other events the count will be 0.
        See Also:
          - `MouseEvent.getClickCount()`

      - ##### popupTrigger

            boolean popupTrigger

        A property used to indicate whether a Popup Menu should appear with a certain gestures. If `popupTrigger` = `false`, no popup menu should appear. If it is `true` then a popup menu should appear.
        See Also:
          - `PopupMenu`
          - `MouseEvent.isPopupTrigger()`

      - ##### x

            int x

        The mouse event's x coordinate. The x value is relative to the component that fired the event.
        See Also:
          - `MouseEvent.getX()`

      - ##### xAbs

            int xAbs

        The mouse event's x absolute coordinate. In a virtual device multi-screen environment in which the desktop area could span multiple physical screen devices, this coordinate is relative to the virtual coordinate system. Otherwise, this coordinate is relative to the coordinate system associated with the Component's GraphicsConfiguration.

      - ##### y

            int y

        The mouse event's y coordinate. The y value is relative to the component that fired the event.
        See Also:
          - `MouseEvent.getY()`

      - ##### yAbs

            int yAbs

        The mouse event's y absolute coordinate. In a virtual device multi-screen environment in which the desktop area could span multiple physical screen devices, this coordinate is relative to the virtual coordinate system. Otherwise, this coordinate is relative to the coordinate system associated with the Component's GraphicsConfiguration.

  - ### Class java.awt.event.MouseWheelEvent

    class MouseWheelEvent extends MouseEvent implements Serializable
    serialVersionUID:
      6459879390515399677L

    - #### Serialized Fields

      - ##### preciseWheelRotation

            double preciseWheelRotation

        Indicates how far the mouse wheel was rotated.
        See Also:
          - `MouseWheelEvent.getPreciseWheelRotation()`

      - ##### scrollAmount

            int scrollAmount

        Only valid for scrollType WHEEL_UNIT_SCROLL. Indicates number of units that should be scrolled per click of mouse wheel rotation, based on platform settings.
        See Also:
          - `MouseWheelEvent.getScrollAmount()`
          - `MouseWheelEvent.getScrollType()`

      - ##### scrollType

            int scrollType

        Indicates what sort of scrolling should take place in response to this event, based on platform settings. Legal values are:
        - WHEEL_UNIT_SCROLL
        - WHEEL_BLOCK_SCROLL
        See Also:
          - `MouseWheelEvent.getScrollType()`

      - ##### wheelRotation

            int wheelRotation

        Indicates how far the mouse wheel was rotated.
        See Also:
          - `MouseWheelEvent.getWheelRotation()`

  - ### Class java.awt.event.PaintEvent

    class PaintEvent extends ComponentEvent implements Serializable
    serialVersionUID:
      1267492026433337593L

    - #### Serialized Fields

      - ##### updateRect

            Rectangle updateRect

        This is the rectangle that represents the area on the source component that requires a repaint. This rectangle should be non null.
        See Also:
          - `Rectangle`
          - `PaintEvent.setUpdateRect(Rectangle)`
          - `PaintEvent.getUpdateRect()`

  - ### Class java.awt.event.TextEvent

    class TextEvent extends AWTEvent implements Serializable
    serialVersionUID:
      6269902291250941179L

  - ### Class java.awt.event.WindowEvent

    class WindowEvent extends ComponentEvent implements Serializable
    serialVersionUID:
      -1567959133147912127L

    - #### Serialized Fields

      - ##### newState

            int newState

        New state of the window for window state change event.

      - ##### oldState

            int oldState

        Previous state of the window for window state change event.

- ## Package java.awt.font

  - ### Class java.awt.font.NumericShaper

    class NumericShaper extends Object implements Serializable
    serialVersionUID:
      -8022764705923730308L

    - #### Serialization Methods

      - ##### writeObject

        private void writeObject(ObjectOutputStream stream) throws IOException
        Converts the `NumericShaper.Range` enum-based parameters, if any, to the bit mask-based counterparts and writes this object to the `stream`. Any enum constants that have no bit mask-based counterparts are ignored in the conversion.
        Parameters:
          `stream` - the output stream to write to
        Throws:
          `IOException` - if an I/O error occurs while writing to `stream`
        Since:
          1.7

    - #### Serialized Fields

      - ##### key

            int key

        index of context for contextual shaping - values range from 0 to 18

      - ##### mask

            int mask

        flag indicating whether to shape contextually (high bit) and which digit ranges to shape (bits 0-18)

      - ##### shapingRange

            NumericShaper.Range shapingRange

        The context `Range` for contextual shaping or the `Range` for non-contextual shaping. `null` for the bit mask-based API.
        Since:
          1.7

  - ### Class java.awt.font.TextAttribute

    class TextAttribute extends AttributedCharacterIterator.Attribute implements Serializable
    serialVersionUID:
      7744112784117861702L

    - #### Serialization Methods

      - ##### readResolve

        protected Object readResolve() throws InvalidObjectException
        Resolves instances being deserialized to the predefined constants.
        Throws:
          `InvalidObjectException` - if the object to resolve is not an instance of `Attribute`

  - ### Class java.awt.font.TransformAttribute

    class TransformAttribute extends Object implements Serializable
    serialVersionUID:
      3356247357827709530L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve() throws ObjectStreamException
        Resolves a `TransformAttribute` object after serialization.
        Throws:
          `ObjectStreamException` - if a new object replacing this object could not be created
        Since:
          1.6

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### transform

            AffineTransform transform

        The `AffineTransform` for this `TransformAttribute`, or `null` if `AffineTransform` is the identity transform.

- ## Package java.awt.geom

  - ### Class java.awt.geom.AffineTransform

    class AffineTransform extends Object implements Serializable
    serialVersionUID:
      1330973210523860834L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reads the `ObjectInputStream`.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes default serializable fields to stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### m00

            double m00

        The X coordinate scaling element of the 3x3 affine transformation matrix.

      - ##### m01

            double m01

        The X coordinate shearing element of the 3x3 affine transformation matrix.

      - ##### m02

            double m02

        The X coordinate of the translation element of the 3x3 affine transformation matrix.

      - ##### m10

            double m10

        The Y coordinate shearing element of the 3x3 affine transformation matrix.

      - ##### m11

            double m11

        The Y coordinate scaling element of the 3x3 affine transformation matrix.

      - ##### m12

            double m12

        The Y coordinate of the translation element of the 3x3 affine transformation matrix.

  - ### Class java.awt.geom.Arc2D.Double

    class Double extends Arc2D implements Serializable
    serialVersionUID:
      728264085846882001L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reads the default serializable fields from the `ObjectInputStream` followed by a byte indicating the arc type of this `Arc2D` instance.
        Serial Data:
          1. The default serializable fields.
          2. followed by a `byte` indicating the arc type `Arc2D.OPEN`, `Arc2D.CHORD`, or `Arc2D.PIE`.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes the default serializable fields to the `ObjectOutputStream` followed by a byte indicating the arc type of this `Arc2D` instance.
        Serial Data:
          1. The default serializable fields.
          2. followed by a `byte` indicating the arc type `Arc2D.OPEN`, `Arc2D.CHORD`, or `Arc2D.PIE`.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### extent

            double extent

        The angular extent of the arc in degrees.
        Since:
          1.2

      - ##### height

            double height

        The overall height of the full ellipse of which this arc is a partial section (not considering the angular extents).
        Since:
          1.2

      - ##### start

            double start

        The starting angle of the arc in degrees.
        Since:
          1.2

      - ##### width

            double width

        The overall width of the full ellipse of which this arc is a partial section (not considering the angular extents).
        Since:
          1.2

      - ##### x

            double x

        The X coordinate of the upper-left corner of the framing rectangle of the arc.
        Since:
          1.2

      - ##### y

            double y

        The Y coordinate of the upper-left corner of the framing rectangle of the arc.
        Since:
          1.2

  - ### Class java.awt.geom.Arc2D.Float

    class Float extends Arc2D implements Serializable
    serialVersionUID:
      9130893014586380278L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reads the default serializable fields from the `ObjectInputStream` followed by a byte indicating the arc type of this `Arc2D` instance.
        Serial Data:
          1. The default serializable fields.
          2. followed by a `byte` indicating the arc type `Arc2D.OPEN`, `Arc2D.CHORD`, or `Arc2D.PIE`.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes the default serializable fields to the `ObjectOutputStream` followed by a byte indicating the arc type of this `Arc2D` instance.
        Serial Data:
          1. The default serializable fields.
          2. followed by a `byte` indicating the arc type `Arc2D.OPEN`, `Arc2D.CHORD`, or `Arc2D.PIE`.
        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### extent

            float extent

        The angular extent of the arc in degrees.
        Since:
          1.2

      - ##### height

            float height

        The overall height of the full ellipse of which this arc is a partial section (not considering the angular extents).
        Since:
          1.2

      - ##### start

            float start

        The starting angle of the arc in degrees.
        Since:
          1.2

      - ##### width

            float width

        The overall width of the full ellipse of which this arc is a partial section (not considering the angular extents).
        Since:
          1.2

      - ##### x

            float x

        The X coordinate of the upper-left corner of the framing rectangle of the arc.
        Since:
          1.2

      - ##### y

            float y

        The Y coordinate of the upper-left corner of the framing rectangle of the arc.
        Since:
          1.2

  - ### Class java.awt.geom.CubicCurve2D.Double

    class Double extends CubicCurve2D implements Serializable
    serialVersionUID:
      -4202960122839707295L

    - #### Serialized Fields

      - ##### ctrlx1

            double ctrlx1

        The X coordinate of the first control point of the cubic curve segment.
        Since:
          1.2

      - ##### ctrlx2

            double ctrlx2

        The X coordinate of the second control point of the cubic curve segment.
        Since:
          1.2

      - ##### ctrly1

            double ctrly1

        The Y coordinate of the first control point of the cubic curve segment.
        Since:
          1.2

      - ##### ctrly2

            double ctrly2

        The Y coordinate of the second control point of the cubic curve segment.
        Since:
          1.2

      - ##### x1

            double x1

        The X coordinate of the start point of the cubic curve segment.
        Since:
          1.2

      - ##### x2

            double x2

        The X coordinate of the end point of the cubic curve segment.
        Since:
          1.2

      - ##### y1

            double y1

        The Y coordinate of the start point of the cubic curve segment.
        Since:
          1.2

      - ##### y2

            double y2

        The Y coordinate of the end point of the cubic curve segment.
        Since:
          1.2

  - ### Class java.awt.geom.CubicCurve2D.Float

    class Float extends CubicCurve2D implements Serializable
    serialVersionUID:
      -1272015596714244385L

    - #### Serialized Fields

      - ##### ctrlx1

            float ctrlx1

        The X coordinate of the first control point of the cubic curve segment.
        Since:
          1.2

      - ##### ctrlx2

            float ctrlx2

        The X coordinate of the second control point of the cubic curve segment.
        Since:
          1.2

      - ##### ctrly1

            float ctrly1

        The Y coordinate of the first control point of the cubic curve segment.
        Since:
          1.2

      - ##### ctrly2

            float ctrly2

        The Y coordinate of the second control point of the cubic curve segment.
        Since:
          1.2

      - ##### x1

            float x1

        The X coordinate of the start point of the cubic curve segment.
        Since:
          1.2

      - ##### x2

            float x2

        The X coordinate of the end point of the cubic curve segment.
        Since:
          1.2

      - ##### y1

            float y1

        The Y coordinate of the start point of the cubic curve segment.
        Since:
          1.2

      - ##### y2

            float y2

        The Y coordinate of the end point of the cubic curve segment.
        Since:
          1.2

  - ### Class java.awt.geom.Ellipse2D.Double

    class Double extends Ellipse2D implements Serializable
    serialVersionUID:
      5555464816372320683L

    - #### Serialized Fields

      - ##### height

            double height

        The overall height of the `Ellipse2D`.
        Since:
          1.2

      - ##### width

            double width

        The overall width of this `Ellipse2D`.
        Since:
          1.2

      - ##### x

            double x

        The X coordinate of the upper-left corner of the framing rectangle of this `Ellipse2D`.
        Since:
          1.2

      - ##### y

            double y

        The Y coordinate of the upper-left corner of the framing rectangle of this `Ellipse2D`.
        Since:
          1.2

  - ### Class java.awt.geom.Ellipse2D.Float

    class Float extends Ellipse2D implements Serializable
    serialVersionUID:
      -6633761252372475977L

    - #### Serialized Fields

      - ##### height

            float height

        The overall height of this `Ellipse2D`.
        Since:
          1.2

      - ##### width

            float width

        The overall width of this `Ellipse2D`.
        Since:
          1.2

      - ##### x

            float x

        The X coordinate of the upper-left corner of the framing rectangle of this `Ellipse2D`.
        Since:
          1.2

      - ##### y

            float y

        The Y coordinate of the upper-left corner of the framing rectangle of this `Ellipse2D`.
        Since:
          1.2

  - ### Class java.awt.geom.GeneralPath

    class GeneralPath extends Path2D.Float implements Serializable
    serialVersionUID:
      -8327096662768731142L

  - ### Exception Class java.awt.geom.IllegalPathStateException

    class IllegalPathStateException extends RuntimeException implements Serializable
    serialVersionUID:
      -5158084205220481094L

  - ### Class java.awt.geom.Line2D.Double

    class Double extends Line2D implements Serializable
    serialVersionUID:
      7979627399746467499L

    - #### Serialized Fields

      - ##### x1

            double x1

        The X coordinate of the start point of the line segment.
        Since:
          1.2

      - ##### x2

            double x2

        The X coordinate of the end point of the line segment.
        Since:
          1.2

      - ##### y1

            double y1

        The Y coordinate of the start point of the line segment.
        Since:
          1.2

      - ##### y2

            double y2

        The Y coordinate of the end point of the line segment.
        Since:
          1.2

  - ### Class java.awt.geom.Line2D.Float

    class Float extends Line2D implements Serializable
    serialVersionUID:
      6161772511649436349L

    - #### Serialized Fields

      - ##### x1

            float x1

        The X coordinate of the start point of the line segment.
        Since:
          1.2

      - ##### x2

            float x2

        The X coordinate of the end point of the line segment.
        Since:
          1.2

      - ##### y1

            float y1

        The Y coordinate of the start point of the line segment.
        Since:
          1.2

      - ##### y2

            float y2

        The Y coordinate of the end point of the line segment.
        Since:
          1.2

  - ### Exception Class java.awt.geom.NoninvertibleTransformException

    class NoninvertibleTransformException extends Exception implements Serializable
    serialVersionUID:
      6137225240503990466L

  - ### Class java.awt.geom.Path2D.Double

    class Double extends Path2D implements Serializable
    serialVersionUID:
      1826762518450014216L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reads the default serializable fields from the `ObjectInputStream` followed by an explicit serialization of the path segments stored in this path.

        There are no default serializable fields as of 1.6.

        The serial data for this object is described in the writeObject method.

        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs *
        Since:
          1.6

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes the default serializable fields to the `ObjectOutputStream` followed by an explicit serialization of the path segments stored in this path.
        Serial Data:
          1. The default serializable fields. There are no default serializable fields as of 1.6.
          2. followed by a byte indicating the storage type of the original object as a hint (SERIAL_STORAGE_DBL_ARRAY)
          3. followed by an integer indicating the number of path segments to follow (NP) or -1 to indicate an unknown number of path segments follows
          4. followed by an integer indicating the total number of coordinates to follow (NC) or -1 to indicate an unknown number of coordinates follows (NC should always be even since coordinates always appear in pairs representing an x,y pair)
          5. followed by a byte indicating the winding rule (`WIND_EVEN_ODD` or `WIND_NON_ZERO`)
          6. followed by `NP` (or unlimited if `NP < 0`) sets of values consisting of a single byte indicating a path segment type followed by one or more pairs of float or double values representing the coordinates of the path segment
          7. followed by a byte indicating the end of the path (SERIAL_PATH_END).

          The following byte value constants are used in the serialized form of `Path2D` objects:

          Constants
          Constant Name | Byte Value | Followed by | Description
          --- | --- | --- | ---
          `SERIAL_STORAGE_FLT_ARRAY` | 0x30 |  | A hint that the original `Path2D` object stored the coordinates in a Java array of floats.
          `SERIAL_STORAGE_DBL_ARRAY` | 0x31 |  | A hint that the original `Path2D` object stored the coordinates in a Java array of doubles.
          `SERIAL_SEG_FLT_MOVETO` | 0x40 | 2 floats | A `moveTo` path segment follows.
          `SERIAL_SEG_FLT_LINETO` | 0x41 | 2 floats | A `lineTo` path segment follows.
          `SERIAL_SEG_FLT_QUADTO` | 0x42 | 4 floats | A `quadTo` path segment follows.
          `SERIAL_SEG_FLT_CUBICTO` | 0x43 | 6 floats | A `curveTo` path segment follows.
          `SERIAL_SEG_DBL_MOVETO` | 0x50 | 2 doubles | A `moveTo` path segment follows.
          `SERIAL_SEG_DBL_LINETO` | 0x51 | 2 doubles | A `lineTo` path segment follows.
          `SERIAL_SEG_DBL_QUADTO` | 0x52 | 4 doubles | A `curveTo` path segment follows.
          `SERIAL_SEG_DBL_CUBICTO` | 0x53 | 6 doubles | A `curveTo` path segment follows.
          `SERIAL_SEG_CLOSE` | 0x60 |  | A `closePath` path segment.
          `SERIAL_PATH_END` | 0x61 |  | There are no more path segments following.

        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        Since:
          1.6

  - ### Class java.awt.geom.Path2D.Float

    class Float extends Path2D implements Serializable
    serialVersionUID:
      6990832515060788886L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reads the default serializable fields from the `ObjectInputStream` followed by an explicit serialization of the path segments stored in this path.

        There are no default serializable fields as of 1.6.

        The serial data for this object is described in the writeObject method.

        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs
        Since:
          1.6

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes the default serializable fields to the `ObjectOutputStream` followed by an explicit serialization of the path segments stored in this path.
        Serial Data:
          1. The default serializable fields. There are no default serializable fields as of 1.6.
          2. followed by a byte indicating the storage type of the original object as a hint (SERIAL_STORAGE_FLT_ARRAY)
          3. followed by an integer indicating the number of path segments to follow (NP) or -1 to indicate an unknown number of path segments follows
          4. followed by an integer indicating the total number of coordinates to follow (NC) or -1 to indicate an unknown number of coordinates follows (NC should always be even since coordinates always appear in pairs representing an x,y pair)
          5. followed by a byte indicating the winding rule (`WIND_EVEN_ODD` or `WIND_NON_ZERO`)
          6. followed by `NP` (or unlimited if `NP < 0`) sets of values consisting of a single byte indicating a path segment type followed by one or more pairs of float or double values representing the coordinates of the path segment
          7. followed by a byte indicating the end of the path (SERIAL_PATH_END).

          The following byte value constants are used in the serialized form of `Path2D` objects:

          Constants
          Constant Name | Byte Value | Followed by | Description
          --- | --- | --- | ---
          `SERIAL_STORAGE_FLT_ARRAY` | 0x30 |  | A hint that the original `Path2D` object stored the coordinates in a Java array of floats.
          `SERIAL_STORAGE_DBL_ARRAY` | 0x31 |  | A hint that the original `Path2D` object stored the coordinates in a Java array of doubles.
          `SERIAL_SEG_FLT_MOVETO` | 0x40 | 2 floats | A `moveTo` path segment follows.
          `SERIAL_SEG_FLT_LINETO` | 0x41 | 2 floats | A `lineTo` path segment follows.
          `SERIAL_SEG_FLT_QUADTO` | 0x42 | 4 floats | A `quadTo` path segment follows.
          `SERIAL_SEG_FLT_CUBICTO` | 0x43 | 6 floats | A `curveTo` path segment follows.
          `SERIAL_SEG_DBL_MOVETO` | 0x50 | 2 doubles | A `moveTo` path segment follows.
          `SERIAL_SEG_DBL_LINETO` | 0x51 | 2 doubles | A `lineTo` path segment follows.
          `SERIAL_SEG_DBL_QUADTO` | 0x52 | 4 doubles | A `curveTo` path segment follows.
          `SERIAL_SEG_DBL_CUBICTO` | 0x53 | 6 doubles | A `curveTo` path segment follows.
          `SERIAL_SEG_CLOSE` | 0x60 |  | A `closePath` path segment.
          `SERIAL_PATH_END` | 0x61 |  | There are no more path segments following.

        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs
        Since:
          1.6

  - ### Class java.awt.geom.Point2D.Double

    class Double extends Point2D implements Serializable
    serialVersionUID:
      6150783262733311327L

    - #### Serialized Fields

      - ##### x

            double x

        The X coordinate of this `Point2D`.
        Since:
          1.2

      - ##### y

            double y

        The Y coordinate of this `Point2D`.
        Since:
          1.2

  - ### Class java.awt.geom.Point2D.Float

    class Float extends Point2D implements Serializable
    serialVersionUID:
      -2870572449815403710L

    - #### Serialized Fields

      - ##### x

            float x

        The X coordinate of this `Point2D`.
        Since:
          1.2

      - ##### y

            float y

        The Y coordinate of this `Point2D`.
        Since:
          1.2

  - ### Class java.awt.geom.QuadCurve2D.Double

    class Double extends QuadCurve2D implements Serializable
    serialVersionUID:
      4217149928428559721L

    - #### Serialized Fields

      - ##### ctrlx

            double ctrlx

        The X coordinate of the control point of the quadratic curve segment.
        Since:
          1.2

      - ##### ctrly

            double ctrly

        The Y coordinate of the control point of the quadratic curve segment.
        Since:
          1.2

      - ##### x1

            double x1

        The X coordinate of the start point of the quadratic curve segment.
        Since:
          1.2

      - ##### x2

            double x2

        The X coordinate of the end point of the quadratic curve segment.
        Since:
          1.2

      - ##### y1

            double y1

        The Y coordinate of the start point of the quadratic curve segment.
        Since:
          1.2

      - ##### y2

            double y2

        The Y coordinate of the end point of the quadratic curve segment.
        Since:
          1.2

  - ### Class java.awt.geom.QuadCurve2D.Float

    class Float extends QuadCurve2D implements Serializable
    serialVersionUID:
      -8511188402130719609L

    - #### Serialized Fields

      - ##### ctrlx

            float ctrlx

        The X coordinate of the control point of the quadratic curve segment.
        Since:
          1.2

      - ##### ctrly

            float ctrly

        The Y coordinate of the control point of the quadratic curve segment.
        Since:
          1.2

      - ##### x1

            float x1

        The X coordinate of the start point of the quadratic curve segment.
        Since:
          1.2

      - ##### x2

            float x2

        The X coordinate of the end point of the quadratic curve segment.
        Since:
          1.2

      - ##### y1

            float y1

        The Y coordinate of the start point of the quadratic curve segment.
        Since:
          1.2

      - ##### y2

            float y2

        The Y coordinate of the end point of the quadratic curve segment.
        Since:
          1.2

  - ### Class java.awt.geom.Rectangle2D.Double

    class Double extends Rectangle2D implements Serializable
    serialVersionUID:
      7771313791441850493L

    - #### Serialized Fields

      - ##### height

            double height

        The height of this `Rectangle2D`.
        Since:
          1.2

      - ##### width

            double width

        The width of this `Rectangle2D`.
        Since:
          1.2

      - ##### x

            double x

        The X coordinate of this `Rectangle2D`.
        Since:
          1.2

      - ##### y

            double y

        The Y coordinate of this `Rectangle2D`.
        Since:
          1.2

  - ### Class java.awt.geom.Rectangle2D.Float

    class Float extends Rectangle2D implements Serializable
    serialVersionUID:
      3798716824173675777L

    - #### Serialized Fields

      - ##### height

            float height

        The height of this `Rectangle2D`.
        Since:
          1.2

      - ##### width

            float width

        The width of this `Rectangle2D`.
        Since:
          1.2

      - ##### x

            float x

        The X coordinate of this `Rectangle2D`.
        Since:
          1.2

      - ##### y

            float y

        The Y coordinate of this `Rectangle2D`.
        Since:
          1.2

  - ### Class java.awt.geom.RoundRectangle2D.Double

    class Double extends RoundRectangle2D implements Serializable
    serialVersionUID:
      1048939333485206117L

    - #### Serialized Fields

      - ##### archeight

            double archeight

        The height of the arc that rounds off the corners.
        Since:
          1.2

      - ##### arcwidth

            double arcwidth

        The width of the arc that rounds off the corners.
        Since:
          1.2

      - ##### height

            double height

        The height of this `RoundRectangle2D`.
        Since:
          1.2

      - ##### width

            double width

        The width of this `RoundRectangle2D`.
        Since:
          1.2

      - ##### x

            double x

        The X coordinate of this `RoundRectangle2D`.
        Since:
          1.2

      - ##### y

            double y

        The Y coordinate of this `RoundRectangle2D`.
        Since:
          1.2

  - ### Class java.awt.geom.RoundRectangle2D.Float

    class Float extends RoundRectangle2D implements Serializable
    serialVersionUID:
      -3423150618393866922L

    - #### Serialized Fields

      - ##### archeight

            float archeight

        The height of the arc that rounds off the corners.
        Since:
          1.2

      - ##### arcwidth

            float arcwidth

        The width of the arc that rounds off the corners.
        Since:
          1.2

      - ##### height

            float height

        The height of this `RoundRectangle2D`.
        Since:
          1.2

      - ##### width

            float width

        The width of this `RoundRectangle2D`.
        Since:
          1.2

      - ##### x

            float x

        The X coordinate of this `RoundRectangle2D`.
        Since:
          1.2

      - ##### y

            float y

        The Y coordinate of this `RoundRectangle2D`.
        Since:
          1.2

- ## Package java.awt.image

  - ### Exception Class java.awt.image.ImagingOpException

    class ImagingOpException extends RuntimeException implements Serializable
    serialVersionUID:
      8026288481846276658L

  - ### Exception Class java.awt.image.RasterFormatException

    class RasterFormatException extends RuntimeException implements Serializable
    serialVersionUID:
      96598996116164315L

- ## Package java.awt.image.renderable

  - ### Class java.awt.image.renderable.ParameterBlock

    class ParameterBlock extends Object implements Serializable
    serialVersionUID:
      -7577115551785240750L

    - #### Serialized Fields

      - ##### parameters

            Vector<Object> parameters

        A Vector of non-source parameters, stored as arbitrary Objects.

      - ##### sources

            Vector<Object> sources

        A Vector of sources, stored as arbitrary Objects.

- ## Package java.awt.print

  - ### Exception Class java.awt.print.PrinterAbortException

    class PrinterAbortException extends PrinterException implements Serializable
    serialVersionUID:
      4725169026278854136L

  - ### Exception Class java.awt.print.PrinterException

    class PrinterException extends Exception implements Serializable
    serialVersionUID:
      -3757589981158265819L

  - ### Exception Class java.awt.print.PrinterIOException

    class PrinterIOException extends PrinterException implements Serializable
    serialVersionUID:
      5850870712125932846L

    - #### Serialized Fields

      - ##### mException

            IOException mException

        The IO error that terminated the print job.

- ## Package java.beans

  - ### Class java.beans.IndexedPropertyChangeEvent

    class IndexedPropertyChangeEvent extends PropertyChangeEvent implements Serializable
    serialVersionUID:
      -320227448495806870L

    - #### Serialized Fields

      - ##### index

            int index

        The index of the property element that was changed.

  - ### Exception Class java.beans.IntrospectionException

    class IntrospectionException extends Exception implements Serializable
    serialVersionUID:
      -3728150539969542619L

  - ### Class java.beans.PropertyChangeEvent

    class PropertyChangeEvent extends EventObject implements Serializable
    serialVersionUID:
      7042693688939648123L

    - #### Serialized Fields

      - ##### newValue

            Object newValue

        New value for property. May be null if not known.

      - ##### oldValue

            Object oldValue

        Previous value for property. May be null if not known.

      - ##### propagationId

            Object propagationId

        Propagation ID. May be null.
        See Also:
          - `PropertyChangeEvent.getPropagationId()`

      - ##### propertyName

            String propertyName

        name of the property that changed. May be null, if not known.

  - ### Class java.beans.PropertyChangeSupport

    class PropertyChangeSupport extends Object implements Serializable
    serialVersionUID:
      6401253773779951803L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reads the `ObjectInputStream`.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes serializable fields to stream.
        Serial Data:
          Null terminated list of `PropertyChangeListeners`.

          At serialization time we skip non-serializable listeners and only serialize the serializable listeners.

        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### children

            Hashtable children

        The list of `PropertyChangeListeners`

      - ##### propertyChangeSupportSerializedDataVersion

            int propertyChangeSupportSerializedDataVersion

        The version

      - ##### source

            Object source

        The object to be provided as the "source" for any generated events

  - ### Exception Class java.beans.PropertyVetoException

    class PropertyVetoException extends Exception implements Serializable
    serialVersionUID:
      129596057694162164L

    - #### Serialized Fields

      - ##### evt

            PropertyChangeEvent evt

        A PropertyChangeEvent describing the vetoed change.

  - ### Class java.beans.VetoableChangeSupport

    class VetoableChangeSupport extends Object implements Serializable
    serialVersionUID:
      -5090210921595982017L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reads the `ObjectInputStream`.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes serializable fields to stream.
        Serial Data:
          Null terminated list of `VetoableChangeListeners`.

          At serialization time we skip non-serializable listeners and only serialize the serializable listeners.

        Parameters:
          `s` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### children

            Hashtable children

        The list of `PropertyChangeListeners`

      - ##### source

            Object source

        The object to be provided as the "source" for any generated events

      - ##### vetoableChangeSupportSerializedDataVersion

            int vetoableChangeSupportSerializedDataVersion

        The version

- ## Package java.beans.beancontext

  - ### Class java.beans.beancontext.BeanContextChildSupport

    class BeanContextChildSupport extends Object implements Serializable
    serialVersionUID:
      6328947014421475877L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Restore a persistent object, must wait for subsequent setBeanContext() to fully restore any resources obtained from the new nesting BeanContext.
        Parameters:
          `ois` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream oos) throws IOException
        Write the persistence state of the object.
        Parameters:
          `oos` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### beanContextChildPeer

            BeanContextChild beanContextChildPeer

        The `BeanContext` in which this `BeanContextChild` is nested.

      - ##### pcSupport

            PropertyChangeSupport pcSupport

        The `PropertyChangeSupport` associated with this `BeanContextChildSupport`.

      - ##### vcSupport

            VetoableChangeSupport vcSupport

        The `VetoableChangeSupport` associated with this `BeanContextChildSupport`.

  - ### Class java.beans.beancontext.BeanContextEvent

    class BeanContextEvent extends EventObject implements Serializable
    serialVersionUID:
      7267998073569045052L

    - #### Serialized Fields

      - ##### propagatedFrom

            BeanContext propagatedFrom

        The `BeanContext` from which this event was propagated

  - ### Class java.beans.beancontext.BeanContextMembershipEvent

    class BeanContextMembershipEvent extends BeanContextEvent implements Serializable
    serialVersionUID:
      3499346510334590959L

    - #### Serialized Fields

      - ##### children

            Collection children

        The list of children affected by this event notification.

  - ### Class java.beans.beancontext.BeanContextServiceAvailableEvent

    class BeanContextServiceAvailableEvent extends BeanContextEvent implements Serializable
    serialVersionUID:
      -5333985775656400778L

    - #### Serialized Fields

      - ##### serviceClass

            Class<?> serviceClass

        A `Class` reference to the newly available service

  - ### Class java.beans.beancontext.BeanContextServiceRevokedEvent

    class BeanContextServiceRevokedEvent extends BeanContextEvent implements Serializable
    serialVersionUID:
      -1295543154724961754L

    - #### Serialized Fields

      - ##### invalidateRefs

            boolean invalidateRefs

        `true` if current service is being forcibly revoked.

      - ##### serviceClass

            Class<?> serviceClass

        A `Class` reference to the service that is being revoked.

  - ### Class java.beans.beancontext.BeanContextServicesSupport

    class BeanContextServicesSupport extends BeanContextSupport implements Serializable
    serialVersionUID:
      -8494482757288719206L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Deserialize the instance.
        Parameters:
          `ois` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream oos) throws IOException
        Serialize the instance.
        Parameters:
          `oos` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs

  - ### Class java.beans.beancontext.BeanContextServicesSupport.BCSSChild

    class BCSSChild extends BeanContextSupport.BCSChild implements Serializable
    serialVersionUID:
      -3263851306889194873L

  - ### Class java.beans.beancontext.BeanContextServicesSupport.BCSSServiceProvider

    class BCSSServiceProvider extends Object implements Serializable
    serialVersionUID:
      861278251667444782L

    - #### Serialized Fields

      - ##### serviceProvider

            BeanContextServiceProvider serviceProvider

        The service provider.

  - ### Class java.beans.beancontext.BeanContextSupport

    class BeanContextSupport extends BeanContextChildSupport implements Serializable
    serialVersionUID:
      -4879613978649577204L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        deserialize contents ... if this instance has a distinct peer the children are *not* serialized here, the peer's readObject() must call readChildren() after deserializing this instance.
        Parameters:
          `ois` - the `ObjectInputStream` to read
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream oos) throws IOException
        Serialize the BeanContextSupport, if this instance has a distinct peer (that is this object is acting as a delegate for another) then the children of this instance are not serialized here due to a 'chicken and egg' problem that occurs on deserialization of the children at the same time as this instance. Therefore in situations where there is a distinct peer to this instance it should always call writeObject() followed by writeChildren() and readObject() followed by readChildren().
        Parameters:
          `oos` - the `ObjectOutputStream` to write
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### designTime

            boolean designTime

        A `boolean` indicating whether or not this object is currently in design time mode.

      - ##### locale

            Locale locale

        The current locale of this BeanContext.

      - ##### okToUseGui

            boolean okToUseGui

        A `boolean` indicating if this instance may now render a GUI.

      - ##### serializable

            int serializable

        Currently serializable children.

  - ### Class java.beans.beancontext.BeanContextSupport.BCSChild

    class BCSChild extends Object implements Serializable
    serialVersionUID:
      -5815286101609939109L

    - #### Serialized Fields

      - ##### child

            Object child

        The child.

      - ##### proxyPeer

            Object proxyPeer

        The peer if the child and the peer are related by an implementation of BeanContextProxy

- ## Package java.io

  - ### Exception Class java.io.CharConversionException

    class CharConversionException extends IOException implements Serializable
    serialVersionUID:
      -8680016352018427031L

  - ### Exception Class java.io.EOFException

    class EOFException extends IOException implements Serializable
    serialVersionUID:
      6433858223774886977L

  - ### Class java.io.File

    class File extends Object implements Serializable
    serialVersionUID:
      301077366599181567L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore this filename. The original separator character is read. If it is different from the separator character on this system, then the old separator is replaced by the local separator.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        WriteObject is called to save this filename. The separator character is saved also so it can be replaced in case the path is reconstituted on a different host type.
        Serial Data:
          Default fields followed by separator character.
        Parameters:
          `s` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### path

            String path

        This abstract pathname's normalized pathname string. A normalized pathname string uses the default name-separator character and does not contain any duplicate or redundant separators.

  - ### Exception Class java.io.FileNotFoundException

    class FileNotFoundException extends IOException implements Serializable
    serialVersionUID:
      -897856973823710492L

  - ### Class java.io.FilePermissionCollection

    class FilePermissionCollection extends PermissionCollection implements Serializable
    serialVersionUID:
      2202956749081564585L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Reads in a Vector of FilePermissions and saves them in the perms field.
        Parameters:
          `in` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Writes the contents of the perms field out as a Vector for serialization compatibility with earlier releases.
        Parameters:
          `out` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### permissions

            Vector permissions

        A list of FilePermission objects.

  - ### Exception Class java.io.InterruptedIOException

    class InterruptedIOException extends IOException implements Serializable
    serialVersionUID:
      4020568460727500567L

    - #### Serialized Fields

      - ##### bytesTransferred

            int bytesTransferred

        Reports how many bytes had been transferred as part of the I/O operation before it was interrupted.

  - ### Exception Class java.io.InvalidClassException

    class InvalidClassException extends ObjectStreamException implements Serializable
    serialVersionUID:
      -4333316296251054416L

    - #### Serialized Fields

      - ##### classname

            String classname

        Name of the invalid class.
        Name of the invalid class.

  - ### Exception Class java.io.InvalidObjectException

    class InvalidObjectException extends ObjectStreamException implements Serializable
    serialVersionUID:
      3233174318281839583L

  - ### Exception Class java.io.IOError

    class IOError extends Error implements Serializable
    serialVersionUID:
      67100927991680413L

  - ### Exception Class java.io.IOException

    class IOException extends Exception implements Serializable
    serialVersionUID:
      7818375828146090155L

  - ### Exception Class java.io.NotActiveException

    class NotActiveException extends ObjectStreamException implements Serializable
    serialVersionUID:
      -3893467273049808895L

  - ### Exception Class java.io.NotSerializableException

    class NotSerializableException extends ObjectStreamException implements Serializable
    serialVersionUID:
      2906642554793891381L

  - ### Class java.io.ObjectStreamClass

    class ObjectStreamClass extends Object implements Serializable
    serialVersionUID:
      -6120832682080437368L

    - #### Serialization Overview

      - `ObjectStreamClass` has no fields for default serialization.

    - #### Serialized Fields

  - ### Exception Class java.io.ObjectStreamException

    class ObjectStreamException extends IOException implements Serializable
    serialVersionUID:
      7260898174833392607L

  - ### Exception Class java.io.OptionalDataException

    class OptionalDataException extends ObjectStreamException implements Serializable
    serialVersionUID:
      -8011121865681257820L

    - #### Serialized Fields

      - ##### eof

            boolean eof

        True if there is no more data in the buffered part of the stream.

      - ##### length

            int length

        The number of bytes of primitive data available to be read in the current buffer.

  - ### Class java.io.SerializablePermission

    class SerializablePermission extends BasicPermission implements Serializable
    serialVersionUID:
      8537212141160296410L

    - #### Serialized Fields

      - ##### actions

            String actions

  - ### Exception Class java.io.StreamCorruptedException

    class StreamCorruptedException extends ObjectStreamException implements Serializable
    serialVersionUID:
      8983558202217591746L

  - ### Exception Class java.io.SyncFailedException

    class SyncFailedException extends IOException implements Serializable
    serialVersionUID:
      -2353342684412443330L

  - ### Exception Class java.io.UncheckedIOException

    class UncheckedIOException extends RuntimeException implements Serializable
    serialVersionUID:
      -8134305061645241065L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Called to read the object from a stream.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded
          `InvalidObjectException` - if the object is invalid or has a cause that is not an `IOException`

  - ### Exception Class java.io.UnsupportedEncodingException

    class UnsupportedEncodingException extends IOException implements Serializable
    serialVersionUID:
      -4274276298326136670L

  - ### Exception Class java.io.UTFDataFormatException

    class UTFDataFormatException extends IOException implements Serializable
    serialVersionUID:
      420743449228280612L

  - ### Exception Class java.io.WriteAbortedException

    class WriteAbortedException extends ObjectStreamException implements Serializable
    serialVersionUID:
      -3326426625597282442L

    - #### Serialized Fields

      - ##### detail

            Exception detail

        Deprecated.
        This field predates the general-purpose exception chaining facility. The `Throwable.getCause()` method is now the preferred means of obtaining this information.
        Exception that was caught while writing the ObjectStream.

- ## Package java.lang

  - ### Exception Class java.lang.AbstractMethodError

    class AbstractMethodError extends IncompatibleClassChangeError implements Serializable
    serialVersionUID:
      -1654391082989018462L

  - ### Exception Class java.lang.ArithmeticException

    class ArithmeticException extends RuntimeException implements Serializable
    serialVersionUID:
      2256477558314496007L

  - ### Exception Class java.lang.ArrayIndexOutOfBoundsException

    class ArrayIndexOutOfBoundsException extends IndexOutOfBoundsException implements Serializable
    serialVersionUID:
      -5116101128118950844L

  - ### Exception Class java.lang.ArrayStoreException

    class ArrayStoreException extends RuntimeException implements Serializable
    serialVersionUID:
      -4522193890499838241L

  - ### Exception Class java.lang.AssertionError

    class AssertionError extends Error implements Serializable
    serialVersionUID:
      -5013299493970297370L

  - ### Class java.lang.Boolean

    class Boolean extends Object implements Serializable
    serialVersionUID:
      -3665804199014368530L

    - #### Serialized Fields

      - ##### value

            boolean value

        The value of the Boolean.

  - ### Exception Class java.lang.BootstrapMethodError

    class BootstrapMethodError extends LinkageError implements Serializable
    serialVersionUID:
      292L

  - ### Class java.lang.Byte

    class Byte extends Number implements Serializable
    serialVersionUID:
      -7183698231559129828L

    - #### Serialized Fields

      - ##### value

            byte value

        The value of the `Byte`.

  - ### Class java.lang.Character

    class Character extends Object implements Serializable
    serialVersionUID:
      3786198910865385080L

    - #### Serialized Fields

      - ##### value

            char value

        The value of the `Character`.

  - ### Class java.lang.Class

    class Class extends Object implements Serializable
    serialVersionUID:
      3206093459760846163L

    - #### Serialization Overview

      - Class Class is special cased within the Serialization Stream Protocol. A Class instance is written initially into an ObjectOutputStream in the following format:

                  TC_CLASS ClassDescriptor
                  A ClassDescriptor is a special cased serialization of
                  a java.io.ObjectStreamClass instance.

        A new handle is generated for the initial time the class descriptor is written into the stream. Future references to the class descriptor are written as references to the initial class descriptor instance.
        See Also:
          - `ObjectStreamClass`

    - #### Serialized Fields

  - ### Exception Class java.lang.ClassCastException

    class ClassCastException extends RuntimeException implements Serializable
    serialVersionUID:
      -9223365651070458532L

  - ### Exception Class java.lang.ClassCircularityError

    class ClassCircularityError extends LinkageError implements Serializable
    serialVersionUID:
      1054362542914539689L

  - ### Exception Class java.lang.ClassFormatError

    class ClassFormatError extends LinkageError implements Serializable
    serialVersionUID:
      -8420114879011949195L

  - ### Exception Class java.lang.ClassNotFoundException

    class ClassNotFoundException extends ReflectiveOperationException implements Serializable
    serialVersionUID:
      9176873029745254542L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes the ClassNotFoundException instance from a stream and initialize the cause properly when deserializing from an older version. The getException and getCause method returns the private "ex" field in the older implementation and ClassNotFoundException::cause was set to null.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        To maintain compatibility with older implementation, write a serial "ex" field with the cause as the value.
        Parameters:
          `out` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialization Overview

      - Serializable fields for ClassNotFoundException.

    - #### Serialized Fields

      - ##### ex

            Throwable ex

        the `Throwable`

  - ### Exception Class java.lang.CloneNotSupportedException

    class CloneNotSupportedException extends Exception implements Serializable
    serialVersionUID:
      5195511250079656443L

  - ### Class java.lang.Double

    class Double extends Number implements Serializable
    serialVersionUID:
      -9172774392245257468L

    - #### Serialized Fields

      - ##### value

            double value

        The value of the Double.

  - ### Exception Class java.lang.EnumConstantNotPresentException

    class EnumConstantNotPresentException extends RuntimeException implements Serializable
    serialVersionUID:
      -6046998521960521108L

    - #### Serialized Fields

      - ##### constantName

            String constantName

        The name of the missing enum constant.

      - ##### enumType

            Class<? extends Enum> enumType

        The type of the missing enum constant.

  - ### Exception Class java.lang.Error

    class Error extends Throwable implements Serializable
    serialVersionUID:
      4980196508277280342L

  - ### Exception Class java.lang.Exception

    class Exception extends Throwable implements Serializable
    serialVersionUID:
      -3387516993124229948L

  - ### Exception Class java.lang.ExceptionInInitializerError

    class ExceptionInInitializerError extends LinkageError implements Serializable
    serialVersionUID:
      1521711792217232256L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes the ExceptionInInitializerError instance from a stream and initialize the cause properly when deserializing from an older version. The getException and getCause method returns the private "exception" field in the older implementation and ExceptionInInitializerError::cause was set to null.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        To maintain compatibility with older implementation, write a serial "exception" field with the cause as the value.
        Parameters:
          `out` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialization Overview

      - Serializable fields for ExceptionInInitializerError.

    - #### Serialized Fields

      - ##### exception

            Throwable exception

        the exception

  - ### Class java.lang.Float

    class Float extends Number implements Serializable
    serialVersionUID:
      -2671257302660747028L

    - #### Serialized Fields

      - ##### value

            float value

        The value of the Float.

  - ### Exception Class java.lang.IllegalAccessError

    class IllegalAccessError extends IncompatibleClassChangeError implements Serializable
    serialVersionUID:
      -8988904074992417891L

  - ### Exception Class java.lang.IllegalAccessException

    class IllegalAccessException extends ReflectiveOperationException implements Serializable
    serialVersionUID:
      6616958222490762034L

  - ### Exception Class java.lang.IllegalArgumentException

    class IllegalArgumentException extends RuntimeException implements Serializable
    serialVersionUID:
      -5365630128856068164L

  - ### Exception Class java.lang.IllegalCallerException

    class IllegalCallerException extends RuntimeException implements Serializable
    serialVersionUID:
      -2349421918363102232L

  - ### Exception Class java.lang.IllegalMonitorStateException

    class IllegalMonitorStateException extends RuntimeException implements Serializable
    serialVersionUID:
      3713306369498869069L

  - ### Exception Class java.lang.IllegalStateException

    class IllegalStateException extends RuntimeException implements Serializable
    serialVersionUID:
      -1848914673093119416L

  - ### Exception Class java.lang.IllegalThreadStateException

    class IllegalThreadStateException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      -7626246362397460174L

  - ### Exception Class java.lang.IncompatibleClassChangeError

    class IncompatibleClassChangeError extends LinkageError implements Serializable
    serialVersionUID:
      -4914975503642802119L

  - ### Exception Class java.lang.IndexOutOfBoundsException

    class IndexOutOfBoundsException extends RuntimeException implements Serializable
    serialVersionUID:
      234122996006267687L

  - ### Exception Class java.lang.InstantiationError

    class InstantiationError extends IncompatibleClassChangeError implements Serializable
    serialVersionUID:
      -4885810657349421204L

  - ### Exception Class java.lang.InstantiationException

    class InstantiationException extends ReflectiveOperationException implements Serializable
    serialVersionUID:
      -8441929162975509110L

  - ### Class java.lang.Integer

    class Integer extends Number implements Serializable
    serialVersionUID:
      1360826667806852920L

    - #### Serialized Fields

      - ##### value

            int value

        The value of the `Integer`.

  - ### Exception Class java.lang.InternalError

    class InternalError extends VirtualMachineError implements Serializable
    serialVersionUID:
      -9062593416125562365L

  - ### Exception Class java.lang.InterruptedException

    class InterruptedException extends Exception implements Serializable
    serialVersionUID:
      6700697376100628473L

  - ### Exception Class java.lang.LayerInstantiationException

    class LayerInstantiationException extends RuntimeException implements Serializable
    serialVersionUID:
      -906239691613568347L

  - ### Exception Class java.lang.LinkageError

    class LinkageError extends Error implements Serializable
    serialVersionUID:
      3579600108157160122L

  - ### Class java.lang.Long

    class Long extends Number implements Serializable
    serialVersionUID:
      4290774380558885855L

    - #### Serialized Fields

      - ##### value

            long value

        The value of the `Long`.

  - ### Exception Class java.lang.MatchExceptionPREVIEW

    class MatchException extends RuntimeException implements Serializable
    serialVersionUID:
      0L

  - ### Exception Class java.lang.NegativeArraySizeException

    class NegativeArraySizeException extends RuntimeException implements Serializable
    serialVersionUID:
      -8960118058596991861L

  - ### Exception Class java.lang.NoClassDefFoundError

    class NoClassDefFoundError extends LinkageError implements Serializable
    serialVersionUID:
      9095859863287012458L

  - ### Exception Class java.lang.NoSuchFieldError

    class NoSuchFieldError extends IncompatibleClassChangeError implements Serializable
    serialVersionUID:
      -3456430195886129035L

  - ### Exception Class java.lang.NoSuchFieldException

    class NoSuchFieldException extends ReflectiveOperationException implements Serializable
    serialVersionUID:
      -6143714805279938260L

  - ### Exception Class java.lang.NoSuchMethodError

    class NoSuchMethodError extends IncompatibleClassChangeError implements Serializable
    serialVersionUID:
      -3765521442372831335L

  - ### Exception Class java.lang.NoSuchMethodException

    class NoSuchMethodException extends ReflectiveOperationException implements Serializable
    serialVersionUID:
      5034388446362600923L

  - ### Exception Class java.lang.NullPointerException

    class NullPointerException extends RuntimeException implements Serializable
    serialVersionUID:
      5162710183389028792L

  - ### Class java.lang.Number

    class Number extends Object implements Serializable
    serialVersionUID:
      -8742448824652078965L

  - ### Exception Class java.lang.NumberFormatException

    class NumberFormatException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      -2848938806368998894L

  - ### Exception Class java.lang.OutOfMemoryError

    class OutOfMemoryError extends VirtualMachineError implements Serializable
    serialVersionUID:
      8228564086184010517L

  - ### Exception Class java.lang.ReflectiveOperationException

    class ReflectiveOperationException extends Exception implements Serializable
    serialVersionUID:
      123456789L

  - ### Exception Class java.lang.RuntimeException

    class RuntimeException extends Exception implements Serializable
    serialVersionUID:
      -7034897190745766939L

  - ### Class java.lang.RuntimePermission

    class RuntimePermission extends BasicPermission implements Serializable
    serialVersionUID:
      7399184964622342223L

  - ### Exception Class java.lang.SecurityException

    class SecurityException extends RuntimeException implements Serializable
    serialVersionUID:
      6878364983674394167L

  - ### Class java.lang.Short

    class Short extends Number implements Serializable
    serialVersionUID:
      7515723908773894738L

    - #### Serialized Fields

      - ##### value

            short value

        The value of the `Short`.

  - ### Exception Class java.lang.StackOverflowError

    class StackOverflowError extends VirtualMachineError implements Serializable
    serialVersionUID:
      8609175038441759607L

  - ### Class java.lang.StackTraceElement

    class StackTraceElement extends Object implements Serializable
    serialVersionUID:
      6992337162326171013L

    - #### Serialized Fields

      - ##### classLoaderName

            String classLoaderName

        The name of the class loader.

      - ##### declaringClass

            String declaringClass

        The declaring class.

      - ##### fileName

            String fileName

        The source file name.

      - ##### format

            byte format

        Control to show full or partial module, package, and class names.

      - ##### lineNumber

            int lineNumber

        The source line number.

      - ##### methodName

            String methodName

        The method name.

      - ##### moduleName

            String moduleName

        The module name.

      - ##### moduleVersion

            String moduleVersion

        The module version.

  - ### Class java.lang.String

    class String extends Object implements Serializable
    serialVersionUID:
      -6849794470754667710L

    - #### Serialization Overview

      - Class String is special cased within the Serialization Stream Protocol. A String instance is written into an ObjectOutputStream according to Java Object Serialization Specification, Section 6.2, "Stream Elements"

    - #### Serialized Fields

  - ### Class java.lang.StringBuffer

    class StringBuffer extends java.lang.AbstractStringBuilder implements Serializable
    serialVersionUID:
      3388685877147921107L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        The `readObject` method is called to restore the state of the `StringBuffer` from a stream.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        The `writeObject` method is called to write the state of the `StringBuffer` to a stream.
        Parameters:
          `s` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialization Overview

      - Serializable fields for StringBuffer.

    - #### Serialized Fields

      - ##### count

            int count

        The number of characters in this StringBuffer.

      - ##### shared

            boolean shared

        A flag indicating whether the backing array is shared. The value is ignored upon deserialization.

      - ##### value

            char[] value

        The backing character array of this StringBuffer.

  - ### Class java.lang.StringBuilder

    class StringBuilder extends java.lang.AbstractStringBuilder implements Serializable
    serialVersionUID:
      4383685877147921099L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the StringBuilder from a stream.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Save the state of the `StringBuilder` instance to a stream (that is, serialize it).
        Serial Data:
          the number of characters currently stored in the string builder (`int`), followed by the characters in the string builder (`char[]`). The length of the `char` array may be greater than the number of characters currently stored in the string builder, in which case extra characters are ignored.
        Parameters:
          `s` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

  - ### Exception Class java.lang.StringIndexOutOfBoundsException

    class StringIndexOutOfBoundsException extends IndexOutOfBoundsException implements Serializable
    serialVersionUID:
      -6762910422159637258L

  - ### Exception Class java.lang.ThreadDeath

    class ThreadDeath extends Error implements Serializable
    serialVersionUID:
      -4417128565033088268L

  - ### Exception Class java.lang.Throwable

    class Throwable extends Object implements Serializable
    serialVersionUID:
      -3042686055658047285L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reads a `Throwable` from a stream, enforcing well-formedness constraints on fields. Null entries and self-pointers are not allowed in the list of `suppressedExceptions`. Null entries are not allowed for stack trace elements. A null stack trace in the serial form results in a zero-length stack element array. A single-element stack trace whose entry is equal to `new StackTraceElement("", "", null, Integer.MIN_VALUE)` results in a `null` `stackTrace` field. Note that there are no constraints on the value the `cause` field can hold; both `null` and `this` are valid values for the field.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Write a `Throwable` object to a stream. A `null` stack trace field is represented in the serial form as a one-element array whose element is equal to `new StackTraceElement("", "", null, Integer.MIN_VALUE)`.
        Parameters:
          `s` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### cause

            Throwable cause

        The throwable that caused this throwable to get thrown, or null if this throwable was not caused by another throwable, or if the causative throwable is unknown. If this field is equal to this throwable itself, it indicates that the cause of this throwable has not yet been initialized.
        Since:
          1.4

      - ##### detailMessage

            String detailMessage

        Specific details about the Throwable. For example, for `FileNotFoundException`, this contains the name of the file that could not be found.

      - ##### stackTrace

            StackTraceElement[] stackTrace

        The stack trace, as returned by `Throwable.getStackTrace()`. The field is initialized to a zero-length array. A `null` value of this field indicates subsequent calls to `Throwable.setStackTrace(StackTraceElement[])` and `Throwable.fillInStackTrace()` will be no-ops.
        Since:
          1.4

      - ##### suppressedExceptions

            List<Throwable> suppressedExceptions

        The list of suppressed exceptions, as returned by `Throwable.getSuppressed()`. The list is initialized to a zero-element unmodifiable sentinel list. When a serialized Throwable is read in, if the `suppressedExceptions` field points to a zero-element list, the field is reset to the sentinel value.
        Since:
          1.7

  - ### Exception Class java.lang.TypeNotPresentException

    class TypeNotPresentException extends RuntimeException implements Serializable
    serialVersionUID:
      -5101214195716534496L

    - #### Serialized Fields

      - ##### typeName

            String typeName

        The type name.

  - ### Exception Class java.lang.UnknownError

    class UnknownError extends VirtualMachineError implements Serializable
    serialVersionUID:
      2524784860676771849L

  - ### Exception Class java.lang.UnsatisfiedLinkError

    class UnsatisfiedLinkError extends LinkageError implements Serializable
    serialVersionUID:
      -4019343241616879428L

  - ### Exception Class java.lang.UnsupportedClassVersionError

    class UnsupportedClassVersionError extends ClassFormatError implements Serializable
    serialVersionUID:
      -7123279212883497373L

  - ### Exception Class java.lang.UnsupportedOperationException

    class UnsupportedOperationException extends RuntimeException implements Serializable
    serialVersionUID:
      -1242599979055084673L

  - ### Exception Class java.lang.VerifyError

    class VerifyError extends LinkageError implements Serializable
    serialVersionUID:
      7001962396098498785L

  - ### Exception Class java.lang.VirtualMachineError

    class VirtualMachineError extends Error implements Serializable
    serialVersionUID:
      4161983926571568670L

  - ### Exception Class java.lang.WrongThreadException

    class WrongThreadException extends RuntimeException implements Serializable
    serialVersionUID:
      4676498871006316905L

- ## Package java.lang.annotation

  - ### Exception Class java.lang.annotation.AnnotationFormatError

    class AnnotationFormatError extends Error implements Serializable
    serialVersionUID:
      -4256701562333669892L

  - ### Exception Class java.lang.annotation.AnnotationTypeMismatchException

    class AnnotationTypeMismatchException extends RuntimeException implements Serializable
    serialVersionUID:
      8125925355765570191L

    - #### Serialized Fields

      - ##### foundType

            String foundType

        The (erroneous) type of data found in the annotation. This string may, but is not required to, contain the value as well. The exact format of the string is unspecified.

  - ### Exception Class java.lang.annotation.IncompleteAnnotationException

    class IncompleteAnnotationException extends RuntimeException implements Serializable
    serialVersionUID:
      8445097402741811912L

    - #### Serialized Fields

      - ##### annotationType

            Class<? extends Annotation> annotationType

        The annotation interface.

      - ##### elementName

            String elementName

        The element name.

- ## Package java.lang.instrument

  - ### Exception Class java.lang.instrument.IllegalClassFormatException

    class IllegalClassFormatException extends Exception implements Serializable
    serialVersionUID:
      -3841736710924794009L

  - ### Exception Class java.lang.instrument.UnmodifiableClassException

    class UnmodifiableClassException extends Exception implements Serializable
    serialVersionUID:
      1716652643585309178L

  - ### Exception Class java.lang.instrument.UnmodifiableModuleException

    class UnmodifiableModuleException extends RuntimeException implements Serializable
    serialVersionUID:
      6912511912351080644L

- ## Package java.lang.invoke

  - ### Exception Class java.lang.invoke.LambdaConversionException

    class LambdaConversionException extends Exception implements Serializable
    serialVersionUID:
      300L

  - ### Class java.lang.invoke.MethodType

    class MethodType extends Object implements Serializable
    serialVersionUID:
      292L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitute the `MethodType` instance from a stream (that is, deserialize it). This instance is a scratch object with bogus final fields. It provides the parameters to the factory method called by `readResolve`. After that call it is discarded.
        Parameters:
          `s` - the stream to read the object from
        Throws:
          `IOException` - if there is a problem reading the object
          `ClassNotFoundException` - if one of the component classes cannot be resolved
        See Also:
          - `MethodType.readResolve()`
          - `MethodType.writeObject(java.io.ObjectOutputStream)`

      - ##### readResolve

        private Object readResolve()
        Resolves and initializes a `MethodType` object after serialization.

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Save the `MethodType` instance to a stream.
        Serial Data:
          For portability, the serialized format does not refer to named fields. Instead, the return type and parameter type arrays are written directly from the `writeObject` method, using two calls to `s.writeObject` as follows:

          >     s.writeObject(this.returnType());
          >     s.writeObject(this.parameterArray());

          The deserialized field values are checked as if they were provided to the factory method `methodType`. For example, null values, or `void` parameter types, will lead to exceptions during deserialization.

        Parameters:
          `s` - the stream to write the object to
        Throws:
          `IOException` - if there is a problem writing the object

    - #### Serialization Overview

      - There are no serializable fields for `MethodType`.

    - #### Serialized Fields

  - ### Class java.lang.invoke.SerializedLambda

    class SerializedLambda extends Object implements Serializable
    serialVersionUID:
      8025925345765570181L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve() throws ObjectStreamException
        Resolve a `SerializedLambda` to an object.
        Throws:
          `ObjectStreamException` - if the object is not valid

    - #### Serialized Fields

      - ##### capturedArgs

            Object[] capturedArgs

        The captured arguments.

      - ##### capturingClass

            Class<?> capturingClass

        The capturing class.

      - ##### functionalInterfaceClass

            String functionalInterfaceClass

        The functional interface class.

      - ##### functionalInterfaceMethodName

            String functionalInterfaceMethodName

        The functional interface method name.

      - ##### functionalInterfaceMethodSignature

            String functionalInterfaceMethodSignature

        The functional interface method signature.

      - ##### implClass

            String implClass

        The implementation class.

      - ##### implMethodKind

            int implMethodKind

        The implementation method kind.

      - ##### implMethodName

            String implMethodName

        The implementation method name.

      - ##### implMethodSignature

            String implMethodSignature

        The implementation method signature.

      - ##### instantiatedMethodType

            String instantiatedMethodType

        The instantiated method type.

  - ### Exception Class java.lang.invoke.StringConcatException

    class StringConcatException extends Exception implements Serializable
    serialVersionUID:
      301L

  - ### Exception Class java.lang.invoke.WrongMethodTypeException

    class WrongMethodTypeException extends RuntimeException implements Serializable
    serialVersionUID:
      292L

- ## Package java.lang.management

  - ### Class java.lang.management.ManagementPermission

    class ManagementPermission extends BasicPermission implements Serializable
    serialVersionUID:
      1897496590799378737L

- ## Package java.lang.module

  - ### Exception Class java.lang.module.FindException

    class FindException extends RuntimeException implements Serializable
    serialVersionUID:
      -5817081036963388391L

  - ### Exception Class java.lang.module.InvalidModuleDescriptorException

    class InvalidModuleDescriptorException extends RuntimeException implements Serializable
    serialVersionUID:
      4863390386809347380L

  - ### Exception Class java.lang.module.ResolutionException

    class ResolutionException extends RuntimeException implements Serializable
    serialVersionUID:
      -1031186845316729450L

- ## Package java.lang.reflect

  - ### Exception Class java.lang.reflect.GenericSignatureFormatError

    class GenericSignatureFormatError extends ClassFormatError implements Serializable
    serialVersionUID:
      6709919147137911034L

  - ### Exception Class java.lang.reflect.InaccessibleObjectException

    class InaccessibleObjectException extends RuntimeException implements Serializable
    serialVersionUID:
      4158786093378140901L

  - ### Exception Class java.lang.reflect.InvocationTargetException

    class InvocationTargetException extends ReflectiveOperationException implements Serializable
    serialVersionUID:
      4085088731926701167L

    - #### Serialized Fields

      - ##### target

            Throwable target

        This field holds the target if the InvocationTargetException(Throwable target) constructor was used to instantiate the object

  - ### Exception Class java.lang.reflect.MalformedParameterizedTypeException

    class MalformedParameterizedTypeException extends RuntimeException implements Serializable
    serialVersionUID:
      -5696557788586220964L

  - ### Exception Class java.lang.reflect.MalformedParametersException

    class MalformedParametersException extends RuntimeException implements Serializable
    serialVersionUID:
      20130919L

  - ### Class java.lang.reflect.Proxy

    class Proxy extends Object implements Serializable
    serialVersionUID:
      -2222568056686623797L

    - #### Serialized Fields

      - ##### h

            InvocationHandler h

        the invocation handler for this proxy instance.

  - ### Class java.lang.reflect.ReflectPermission

    class ReflectPermission extends BasicPermission implements Serializable
    serialVersionUID:
      7412737110241507485L

  - ### Exception Class java.lang.reflect.UndeclaredThrowableException

    class UndeclaredThrowableException extends RuntimeException implements Serializable
    serialVersionUID:
      330127114055056639L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes the UndeclaredThrowableException instance from a stream and initialize the cause properly when deserializing from an older version.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        To maintain compatibility with older implementation, write a serial "ex" field with the cause as the value.
        Parameters:
          `out` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialization Overview

      - Serializable fields for UndeclaredThrowableException.

    - #### Serialized Fields

      - ##### undeclaredThrowable

            Throwable undeclaredThrowable

        the undeclared exception

- ## Package java.math

  - ### Class java.math.BigDecimal

    class BigDecimal extends Number implements Serializable
    serialVersionUID:
      6108874887143696463L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitute the `BigDecimal` instance from a stream (that is, deserialize it).
        Parameters:
          `s` - the stream being read.
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### readObjectNoData

        private void readObjectNoData() throws ObjectStreamException
        Serialization without data not supported for this class.
        Throws:
          `ObjectStreamException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Serialize this `BigDecimal` to the stream in question
        Parameters:
          `s` - the stream to serialize to.
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### intVal

            BigInteger intVal

        The unscaled value of this BigDecimal, as returned by `BigDecimal.unscaledValue()`.
        See Also:
          - `BigDecimal.unscaledValue()`

      - ##### scale

            int scale

        The scale of this BigDecimal, as returned by `BigDecimal.scale`.
        See Also:
          - `BigDecimal.scale`

  - ### Class java.math.BigInteger

    class BigInteger extends Number implements Serializable
    serialVersionUID:
      -8287574255936472291L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitute the `BigInteger` instance from a stream (that is, deserialize it). The magnitude is read in as an array of bytes for historical reasons, but it is converted to an array of ints and the byte array is discarded. Note: The current convention is to initialize the cache fields, bitCountPlusOne, bitLengthPlusOne and lowestSetBitPlusTwo, to 0 rather than some other marker value. Therefore, no explicit action to set these fields needs to be taken in readObject because those fields already have a 0 value by default since defaultReadObject is not being used.
        Parameters:
          `s` - the stream being read.
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### readObjectNoData

        private void readObjectNoData() throws ObjectStreamException
        Serialization without data not supported for this class.
        Throws:
          `ObjectStreamException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Save the `BigInteger` instance to a stream. The magnitude of a `BigInteger` is serialized as a byte array for historical reasons. To maintain compatibility with older implementations, the integers -1, -1, -2, and -2 are written as the values of the obsolete fields `bitCount`, `bitLength`, `lowestSetBit`, and `firstNonzeroByteNum`, respectively. These values are compatible with older implementations, but will be ignored by current implementations.
        Parameters:
          `s` - the stream to serialize to.
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialization Overview

      - Serializable fields for BigInteger.

    - #### Serialized Fields

      - ##### bitCount

            int bitCount

        appears in the serialized form for backward compatibility

      - ##### bitLength

            int bitLength

        appears in the serialized form for backward compatibility

      - ##### firstNonzeroByteNum

            int firstNonzeroByteNum

        appears in the serialized form for backward compatibility

      - ##### lowestSetBit

            int lowestSetBit

        appears in the serialized form for backward compatibility

      - ##### magnitude

            byte[] magnitude

        magnitude array of this BigInteger

      - ##### signum

            int signum

        signum of this BigInteger

  - ### Class java.math.MathContext

    class MathContext extends Object implements Serializable
    serialVersionUID:
      5579720004786848255L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitute the `MathContext` instance from a stream (that is, deserialize it).
        Parameters:
          `s` - the stream being read.
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

    - #### Serialized Fields

      - ##### precision

            int precision

        The number of digits to be used for an operation. A value of 0 indicates that unlimited precision (as many digits as are required) will be used. Note that leading zeros (in the coefficient of a number) are never significant.

        `precision` will always be non-negative.

      - ##### roundingMode

            RoundingMode roundingMode

        The rounding algorithm to be used for an operation.
        See Also:
          - `RoundingMode`

- ## Package java.net

  - ### Exception Class java.net.BindException

    class BindException extends SocketException implements Serializable
    serialVersionUID:
      -5945005768251722951L

  - ### Exception Class java.net.ConnectException

    class ConnectException extends SocketException implements Serializable
    serialVersionUID:
      3831404271622369215L

  - ### Exception Class java.net.HttpRetryException

    class HttpRetryException extends IOException implements Serializable
    serialVersionUID:
      -9186022286469111381L

    - #### Serialized Fields

      - ##### location

            String location

        The URL to be redirected to.

      - ##### responseCode

            int responseCode

        The response code.

  - ### Class java.net.Inet4Address

    class Inet4Address extends InetAddress implements Serializable
    serialVersionUID:
      3286316764910316507L

    - #### Serialization Methods

      - ##### writeReplace

        private Object writeReplace() throws ObjectStreamException
        Replaces the object to be serialized with an InetAddress object.
        Throws:
          `ObjectStreamException` - if a new object replacing this object could not be created

  - ### Class java.net.Inet6Address

    class Inet6Address extends InetAddress implements Serializable
    serialVersionUID:
      6880410070516793377L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Restores the state of this object from the stream. This includes the scope information, but only if the scoped interface name is valid on this system.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        The default behavior of this method is overridden in order to write the scope_ifname field as a `String`, rather than a `NetworkInterface` which is not serializable.
        Parameters:
          `s` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### ifname

            String ifname

        the name of the scoped network interface. `null` if undefined

      - ##### ipaddress

            byte[] ipaddress

        holds a 128-bit (16 bytes) IPv6 address

      - ##### scope_id

            int scope_id

        the address scope id. `0` if undefined

      - ##### scope_id_set

            boolean scope_id_set

        `true` when the scope_id field contains a valid integer scope_id

      - ##### scope_ifname_set

            boolean scope_ifname_set

        `true` if the object is constructed with a scoped interface instead of a numeric scope id

  - ### Class java.net.InetAddress

    class InetAddress extends Object implements Serializable
    serialVersionUID:
      3286316764910316507L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Restores the state of this object from the stream.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### readResolve

        private Object readResolve() throws ObjectStreamException
        Replaces the de-serialized object with an Inet4Address object.
        Throws:
          `ObjectStreamException` - if a new object replacing this object could not be created

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes the state of this object to the stream.
        Parameters:
          `s` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### address

            int address

        holds a 32-bit IPv4 address.

      - ##### family

            int family

        specifies the address family type, for instance, `'1'` for IPv4 addresses, and `'2'` for IPv6 addresses.

      - ##### hostName

            String hostName

        the hostname for this address

  - ### Class java.net.InetSocketAddress

    class InetSocketAddress extends SocketAddress implements Serializable
    serialVersionUID:
      5076001401234631237L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Restores the state of this object from the stream.
        Parameters:
          `in` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### readObjectNoData

        private void readObjectNoData() throws ObjectStreamException
        Throws `InvalidObjectException`, always.
        Throws:
          `ObjectStreamException` - always

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Writes the state of this object to the stream.
        Parameters:
          `out` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### addr

            InetAddress addr

        the IP address of the Socket Address

      - ##### hostname

            String hostname

        the hostname of the Socket Address

      - ##### port

            int port

        the port number of the Socket Address

  - ### Exception Class java.net.MalformedURLException

    class MalformedURLException extends IOException implements Serializable
    serialVersionUID:
      -182787522200415866L

  - ### Class java.net.NetPermission

    class NetPermission extends BasicPermission implements Serializable
    serialVersionUID:
      -8343910153355041693L

  - ### Exception Class java.net.NoRouteToHostException

    class NoRouteToHostException extends SocketException implements Serializable
    serialVersionUID:
      -1897550894873493790L

  - ### Exception Class java.net.PortUnreachableException

    class PortUnreachableException extends SocketException implements Serializable
    serialVersionUID:
      8462541992376507323L

  - ### Exception Class java.net.ProtocolException

    class ProtocolException extends IOException implements Serializable
    serialVersionUID:
      -6098449442062388080L

  - ### Class java.net.SocketAddress

    class SocketAddress extends Object implements Serializable
    serialVersionUID:
      5215720748342549866L

  - ### Exception Class java.net.SocketException

    class SocketException extends IOException implements Serializable
    serialVersionUID:
      -5935874303556886934L

  - ### Class java.net.SocketPermissionCollection

    class SocketPermissionCollection extends PermissionCollection implements Serializable
    serialVersionUID:
      2787186408602843674L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Reads in a `Vector` of `SocketPermission` and saves them in the perms field.
        Parameters:
          `in` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Writes the state of this object to the stream.
        Serial Data:
          "permissions" field (a Vector containing the SocketPermissions).
        Parameters:
          `out` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### permissions

            Vector permissions

        A list of the SocketPermissions for this set.

  - ### Exception Class java.net.SocketTimeoutException

    class SocketTimeoutException extends InterruptedIOException implements Serializable
    serialVersionUID:
      -8846654841826352300L

  - ### Class java.net.UnixDomainSocketAddress

    class UnixDomainSocketAddress extends SocketAddress implements Serializable
    serialVersionUID:
      92902496589351288L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Throws InvalidObjectException, always.
        Parameters:
          `s` - the stream
        Throws:
          `InvalidObjectException` - always

      - ##### readObjectNoData

        private void readObjectNoData() throws InvalidObjectException
        Throws InvalidObjectException, always.
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace() throws ObjectStreamException
        Returns a Ser containing the path name of this instance.
        Throws:
          `ObjectStreamException` - if an error occurs

  - ### Class java.net.UnixDomainSocketAddress.Ser

    class Ser extends Object implements Serializable
    serialVersionUID:
      -7955684448513979814L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        Creates a `UnixDomainSocketAddress` instance, by an invocation of the `factory` method passing the path name.

    - #### Serialized Fields

      - ##### pathname

            String pathname

        The path name.

  - ### Exception Class java.net.UnknownHostException

    class UnknownHostException extends IOException implements Serializable
    serialVersionUID:
      -4639126076052875403L

  - ### Exception Class java.net.UnknownServiceException

    class UnknownServiceException extends IOException implements Serializable
    serialVersionUID:
      -4169033248853639508L

  - ### Class java.net.URI

    class URI extends Object implements Serializable
    serialVersionUID:
      -6052424284110960213L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream is) throws ClassNotFoundException, IOException
        Reconstitutes a URI from the given serial stream.

        The `ObjectInputStream.defaultReadObject()` method is invoked to read the value of the `string` field. The result is then parsed in the usual way.

        Parameters:
          `is` - The object-input stream from which this object is being read
        Throws:
          `IOException` - If an I/O error occurs
          `ClassNotFoundException` - If a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream os) throws IOException
        Saves the content of this URI to the given serial stream.

        The only serializable field of a URI instance is its `string` field. That field is given a value, if it does not have one already, and then the `ObjectOutputStream.defaultWriteObject()` method of the given object-output stream is invoked.

        Parameters:
          `os` - The object-output stream to which this object is to be written
        Throws:
          `IOException` - If an I/O error occurs

    - #### Serialized Fields

      - ##### string

            String string

        The string form of this URI.

  - ### Exception Class java.net.URISyntaxException

    class URISyntaxException extends Exception implements Serializable
    serialVersionUID:
      2137979680897488891L

    - #### Serialized Fields

      - ##### index

            int index

        The index at which the parse error occurred, or `-1` if the index is not known.

      - ##### input

            String input

        The input string.

  - ### Class java.net.URL

    class URL extends Object implements Serializable
    serialVersionUID:
      -7627629688361524110L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the URL from the stream. It reads the components of the URL and finds the local stream handler.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### readResolve

        private Object readResolve() throws ObjectStreamException
        Replaces the de-serialized object with an URL object.
        Throws:
          `ObjectStreamException` - if a new object replacing this object could not be created

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        WriteObject is called to save the state of the URL to an ObjectOutputStream. The handler is not saved since it is specific to this system.
        Serial Data:
          the default write object value. When read back in, the reader must ensure that calling getURLStreamHandler with the protocol variable returns a valid URLStreamHandler and throw an IOException if it does not.
        Parameters:
          `s` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### authority

            String authority

        the authority part of this URL

      - ##### file

            String file

        the specified file name on that host. `file` is defined as `path[?query]`

      - ##### hashCode

            int hashCode

        the hashCode of this URL

      - ##### host

            String host

        the host name to connect to

      - ##### port

            int port

        the protocol port to connect to

      - ##### protocol

            String protocol

        the protocol to use (ftp, http, nntp, ... etc.)

      - ##### ref

            String ref

        the fragment part of this URL

  - ### Class java.net.URLPermission

    class URLPermission extends Permission implements Serializable
    serialVersionUID:
      -2702463814894478682L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Restores the state of this object from stream.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

    - #### Serialized Fields

      - ##### actions

            String actions

        The actions string

- ## Package java.net.http

  - ### Exception Class java.net.http.HttpConnectTimeoutException

    class HttpConnectTimeoutException extends HttpTimeoutException implements Serializable
    serialVersionUID:
      332L

  - ### Exception Class java.net.http.HttpTimeoutException

    class HttpTimeoutException extends IOException implements Serializable
    serialVersionUID:
      981344271622632951L

  - ### Exception Class java.net.http.WebSocketHandshakeException

    class WebSocketHandshakeException extends IOException implements Serializable
    serialVersionUID:
      1L

- ## Package java.nio

  - ### Exception Class java.nio.BufferOverflowException

    class BufferOverflowException extends RuntimeException implements Serializable
    serialVersionUID:
      -5484897634319144535L

  - ### Exception Class java.nio.BufferUnderflowException

    class BufferUnderflowException extends RuntimeException implements Serializable
    serialVersionUID:
      -1713313658691622206L

  - ### Exception Class java.nio.InvalidMarkException

    class InvalidMarkException extends IllegalStateException implements Serializable
    serialVersionUID:
      1698329710438510774L

  - ### Exception Class java.nio.ReadOnlyBufferException

    class ReadOnlyBufferException extends UnsupportedOperationException implements Serializable
    serialVersionUID:
      -1210063976496234090L

- ## Package java.nio.channels

  - ### Exception Class java.nio.channels.AcceptPendingException

    class AcceptPendingException extends IllegalStateException implements Serializable
    serialVersionUID:
      2721339977965416421L

  - ### Exception Class java.nio.channels.AlreadyBoundException

    class AlreadyBoundException extends IllegalStateException implements Serializable
    serialVersionUID:
      6796072983322737592L

  - ### Exception Class java.nio.channels.AlreadyConnectedException

    class AlreadyConnectedException extends IllegalStateException implements Serializable
    serialVersionUID:
      -7331895245053773357L

  - ### Exception Class java.nio.channels.AsynchronousCloseException

    class AsynchronousCloseException extends ClosedChannelException implements Serializable
    serialVersionUID:
      6891178312432313966L

  - ### Exception Class java.nio.channels.CancelledKeyException

    class CancelledKeyException extends IllegalStateException implements Serializable
    serialVersionUID:
      -8438032138028814268L

  - ### Exception Class java.nio.channels.ClosedByInterruptException

    class ClosedByInterruptException extends AsynchronousCloseException implements Serializable
    serialVersionUID:
      -4488191543534286750L

  - ### Exception Class java.nio.channels.ClosedChannelException

    class ClosedChannelException extends IOException implements Serializable
    serialVersionUID:
      882777185433553857L

  - ### Exception Class java.nio.channels.ClosedSelectorException

    class ClosedSelectorException extends IllegalStateException implements Serializable
    serialVersionUID:
      6466297122317847835L

  - ### Exception Class java.nio.channels.ConnectionPendingException

    class ConnectionPendingException extends IllegalStateException implements Serializable
    serialVersionUID:
      2008393366501760879L

  - ### Exception Class java.nio.channels.FileLockInterruptionException

    class FileLockInterruptionException extends IOException implements Serializable
    serialVersionUID:
      7104080643653532383L

  - ### Exception Class java.nio.channels.IllegalBlockingModeException

    class IllegalBlockingModeException extends IllegalStateException implements Serializable
    serialVersionUID:
      -3335774961855590474L

  - ### Exception Class java.nio.channels.IllegalChannelGroupException

    class IllegalChannelGroupException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      -2495041211157744253L

  - ### Exception Class java.nio.channels.IllegalSelectorException

    class IllegalSelectorException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      -8406323347253320987L

  - ### Exception Class java.nio.channels.InterruptedByTimeoutException

    class InterruptedByTimeoutException extends IOException implements Serializable
    serialVersionUID:
      -4268008601014042947L

  - ### Exception Class java.nio.channels.NoConnectionPendingException

    class NoConnectionPendingException extends IllegalStateException implements Serializable
    serialVersionUID:
      -8296561183633134743L

  - ### Exception Class java.nio.channels.NonReadableChannelException

    class NonReadableChannelException extends IllegalStateException implements Serializable
    serialVersionUID:
      -3200915679294993514L

  - ### Exception Class java.nio.channels.NonWritableChannelException

    class NonWritableChannelException extends IllegalStateException implements Serializable
    serialVersionUID:
      -7071230488279011621L

  - ### Exception Class java.nio.channels.NotYetBoundException

    class NotYetBoundException extends IllegalStateException implements Serializable
    serialVersionUID:
      4640999303950202242L

  - ### Exception Class java.nio.channels.NotYetConnectedException

    class NotYetConnectedException extends IllegalStateException implements Serializable
    serialVersionUID:
      4697316551909513464L

  - ### Exception Class java.nio.channels.OverlappingFileLockException

    class OverlappingFileLockException extends IllegalStateException implements Serializable
    serialVersionUID:
      2047812138163068433L

  - ### Exception Class java.nio.channels.ReadPendingException

    class ReadPendingException extends IllegalStateException implements Serializable
    serialVersionUID:
      1986315242191227217L

  - ### Exception Class java.nio.channels.ShutdownChannelGroupException

    class ShutdownChannelGroupException extends IllegalStateException implements Serializable
    serialVersionUID:
      -3903801676350154157L

  - ### Exception Class java.nio.channels.UnresolvedAddressException

    class UnresolvedAddressException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      6136959093620794148L

  - ### Exception Class java.nio.channels.UnsupportedAddressTypeException

    class UnsupportedAddressTypeException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      -2964323842829700493L

  - ### Exception Class java.nio.channels.WritePendingException

    class WritePendingException extends IllegalStateException implements Serializable
    serialVersionUID:
      7031871839266032276L

- ## Package java.nio.charset

  - ### Exception Class java.nio.charset.CharacterCodingException

    class CharacterCodingException extends IOException implements Serializable
    serialVersionUID:
      8421532232154627783L

  - ### Exception Class java.nio.charset.CoderMalfunctionError

    class CoderMalfunctionError extends Error implements Serializable
    serialVersionUID:
      -1151412348057794301L

  - ### Exception Class java.nio.charset.IllegalCharsetNameException

    class IllegalCharsetNameException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      1457525358470002989L

    - #### Serialized Fields

      - ##### charsetName

            String charsetName

        The illegal charset name.

  - ### Exception Class java.nio.charset.MalformedInputException

    class MalformedInputException extends CharacterCodingException implements Serializable
    serialVersionUID:
      -3438823399834806194L

    - #### Serialized Fields

      - ##### inputLength

            int inputLength

        The length of the input.

  - ### Exception Class java.nio.charset.UnmappableCharacterException

    class UnmappableCharacterException extends CharacterCodingException implements Serializable
    serialVersionUID:
      -7026962371537706123L

    - #### Serialized Fields

      - ##### inputLength

            int inputLength

        The length of the input character (or byte) sequence.

  - ### Exception Class java.nio.charset.UnsupportedCharsetException

    class UnsupportedCharsetException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      1490765524727386367L

    - #### Serialized Fields

      - ##### charsetName

            String charsetName

        The name of the unsupported charset.

- ## Package java.nio.file

  - ### Exception Class java.nio.file.AccessDeniedException

    class AccessDeniedException extends FileSystemException implements Serializable
    serialVersionUID:
      4943049599949219617L

  - ### Exception Class java.nio.file.AtomicMoveNotSupportedException

    class AtomicMoveNotSupportedException extends FileSystemException implements Serializable
    serialVersionUID:
      5402760225333135579L

  - ### Exception Class java.nio.file.ClosedDirectoryStreamException

    class ClosedDirectoryStreamException extends IllegalStateException implements Serializable
    serialVersionUID:
      4228386650900895400L

  - ### Exception Class java.nio.file.ClosedFileSystemException

    class ClosedFileSystemException extends IllegalStateException implements Serializable
    serialVersionUID:
      -8158336077256193488L

  - ### Exception Class java.nio.file.ClosedWatchServiceException

    class ClosedWatchServiceException extends IllegalStateException implements Serializable
    serialVersionUID:
      1853336266231677732L

  - ### Exception Class java.nio.file.DirectoryIteratorException

    class DirectoryIteratorException extends ConcurrentModificationException implements Serializable
    serialVersionUID:
      -6012699886086212874L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Called to read the object from a stream.
        Parameters:
          `s` - the `ObjectInputStream` to read
        Throws:
          `InvalidObjectException` - if the object is invalid or has a cause that is not an `IOException`
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if the class of a serialized object could not be found

  - ### Exception Class java.nio.file.DirectoryNotEmptyException

    class DirectoryNotEmptyException extends FileSystemException implements Serializable
    serialVersionUID:
      3056667871802779003L

  - ### Exception Class java.nio.file.FileAlreadyExistsException

    class FileAlreadyExistsException extends FileSystemException implements Serializable
    serialVersionUID:
      7579540934498831181L

  - ### Exception Class java.nio.file.FileSystemAlreadyExistsException

    class FileSystemAlreadyExistsException extends RuntimeException implements Serializable
    serialVersionUID:
      -5438419127181131148L

  - ### Exception Class java.nio.file.FileSystemException

    class FileSystemException extends IOException implements Serializable
    serialVersionUID:
      -3055425747967319812L

    - #### Serialized Fields

      - ##### file

            String file

        String identifying the file or `null` if not known.

      - ##### other

            String other

        String identifying the other file or `null` if there isn't another file or if not known.

  - ### Exception Class java.nio.file.FileSystemLoopException

    class FileSystemLoopException extends FileSystemException implements Serializable
    serialVersionUID:
      4843039591949217617L

  - ### Exception Class java.nio.file.FileSystemNotFoundException

    class FileSystemNotFoundException extends RuntimeException implements Serializable
    serialVersionUID:
      7999581764446402397L

  - ### Exception Class java.nio.file.InvalidPathException

    class InvalidPathException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      4355821422286746137L

    - #### Serialized Fields

      - ##### index

            int index

        The index of the input string at which the error occurred or `-1` if not known.

      - ##### input

            String input

        The input string.

  - ### Class java.nio.file.LinkPermission

    class LinkPermission extends BasicPermission implements Serializable
    serialVersionUID:
      -1441492453772213220L

  - ### Exception Class java.nio.file.NoSuchFileException

    class NoSuchFileException extends FileSystemException implements Serializable
    serialVersionUID:
      -1390291775875351931L

  - ### Exception Class java.nio.file.NotDirectoryException

    class NotDirectoryException extends FileSystemException implements Serializable
    serialVersionUID:
      -9011457427178200199L

  - ### Exception Class java.nio.file.NotLinkException

    class NotLinkException extends FileSystemException implements Serializable
    serialVersionUID:
      -388655596416518021L

  - ### Exception Class java.nio.file.ProviderMismatchException

    class ProviderMismatchException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      4990847485741612530L

  - ### Exception Class java.nio.file.ProviderNotFoundException

    class ProviderNotFoundException extends RuntimeException implements Serializable
    serialVersionUID:
      -1880012509822920354L

  - ### Exception Class java.nio.file.ReadOnlyFileSystemException

    class ReadOnlyFileSystemException extends UnsupportedOperationException implements Serializable
    serialVersionUID:
      -6822409595617487197L

- ## Package java.nio.file.attribute

  - ### Exception Class java.nio.file.attribute.UserPrincipalNotFoundException

    class UserPrincipalNotFoundException extends IOException implements Serializable
    serialVersionUID:
      -5369283889045833024L

    - #### Serialized Fields

      - ##### name

            String name

        The user principal name.

- ## Package java.rmi

  - ### Exception Class java.rmi.AccessException

    class AccessException extends RemoteException implements Serializable
    serialVersionUID:
      6314925228044966088L

  - ### Exception Class java.rmi.AlreadyBoundException

    class AlreadyBoundException extends Exception implements Serializable
    serialVersionUID:
      9218657361741657110L

  - ### Exception Class java.rmi.ConnectException

    class ConnectException extends RemoteException implements Serializable
    serialVersionUID:
      4863550261346652506L

  - ### Exception Class java.rmi.ConnectIOException

    class ConnectIOException extends RemoteException implements Serializable
    serialVersionUID:
      -8087809532704668744L

  - ### Exception Class java.rmi.MarshalException

    class MarshalException extends RemoteException implements Serializable
    serialVersionUID:
      6223554758134037936L

  - ### Class java.rmi.MarshalledObject

    class MarshalledObject extends Object implements Serializable
    serialVersionUID:
      8988374069173025854L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
        Reads in the state of the object and saves the stream's serialization filter to be used when the object is deserialized.
        Parameters:
          `stream` - the stream
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a class cannot be found

    - #### Serialized Fields

      - ##### hash

            int hash

        Stored hash code of contained object.
        See Also:
          - `MarshalledObject.hashCode()`

      - ##### locBytes

            byte[] locBytes

        Bytes of location annotations, which are ignored by `equals`. If `locBytes` is null, there were no non-`null` annotations during marshalling.

      - ##### objBytes

            byte[] objBytes

        Bytes of serialized representation. If `objBytes` is `null` then the object marshalled was a `null` reference.

  - ### Exception Class java.rmi.NoSuchObjectException

    class NoSuchObjectException extends RemoteException implements Serializable
    serialVersionUID:
      6619395951570472985L

  - ### Exception Class java.rmi.NotBoundException

    class NotBoundException extends Exception implements Serializable
    serialVersionUID:
      -1857741824849069317L

  - ### Exception Class java.rmi.RemoteException

    class RemoteException extends IOException implements Serializable
    serialVersionUID:
      -5148567311918794206L

    - #### Serialized Fields

      - ##### detail

            Throwable detail

        The cause of the remote exception.

        This field predates the general-purpose exception chaining facility. The `Throwable.getCause()` method is now the preferred means of obtaining this information.

  - ### Exception Class java.rmi.RMISecurityException

    class RMISecurityException extends SecurityException implements Serializable
    serialVersionUID:
      -8433406075740433514L

  - ### Exception Class java.rmi.ServerError

    class ServerError extends RemoteException implements Serializable
    serialVersionUID:
      8455284893909696482L

  - ### Exception Class java.rmi.ServerException

    class ServerException extends RemoteException implements Serializable
    serialVersionUID:
      -4775845313121906682L

  - ### Exception Class java.rmi.ServerRuntimeException

    class ServerRuntimeException extends RemoteException implements Serializable
    serialVersionUID:
      7054464920481467219L

  - ### Exception Class java.rmi.StubNotFoundException

    class StubNotFoundException extends RemoteException implements Serializable
    serialVersionUID:
      -7088199405468872373L

  - ### Exception Class java.rmi.UnexpectedException

    class UnexpectedException extends RemoteException implements Serializable
    serialVersionUID:
      1800467484195073863L

  - ### Exception Class java.rmi.UnknownHostException

    class UnknownHostException extends RemoteException implements Serializable
    serialVersionUID:
      -8152710247442114228L

  - ### Exception Class java.rmi.UnmarshalException

    class UnmarshalException extends RemoteException implements Serializable
    serialVersionUID:
      594380845140740218L

- ## Package java.rmi.dgc

  - ### Class java.rmi.dgc.Lease

    class Lease extends Object implements Serializable
    serialVersionUID:
      -5713411624328831948L

    - #### Serialized Fields

      - ##### value

            long value

        Duration of this lease.
        See Also:
          - `Lease.getValue()`

      - ##### vmid

            VMID vmid

        Virtual Machine ID with which this Lease is associated.
        See Also:
          - `Lease.getVMID()`

  - ### Class java.rmi.dgc.VMID

    class VMID extends Object implements Serializable
    serialVersionUID:
      -538642295484486218L

    - #### Serialized Fields

      - ##### addr

            byte[] addr

        array of bytes uniquely identifying host created on

      - ##### uid

            UID uid

        unique identifier with respect to host created on

- ## Package java.rmi.server

  - ### Exception Class java.rmi.server.ExportException

    class ExportException extends RemoteException implements Serializable
    serialVersionUID:
      -9155485338494060170L

  - ### Class java.rmi.server.ObjID

    class ObjID extends Object implements Serializable
    serialVersionUID:
      -6386392263968365220L

    - #### Serialized Fields

      - ##### objNum

            long objNum

        object number
        See Also:
          - `ObjID.hashCode()`

      - ##### space

            UID space

        address space identifier (unique to host over time)

  - ### Class java.rmi.server.RemoteObject

    class RemoteObject extends Object implements Serializable
    serialVersionUID:
      -3215090123894869218L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        `readObject` for custom serialization.

        This method reads this object's serialized form for this class as follows:

        The `readUTF` method is invoked on `in` to read the external ref type name for the `RemoteRef` instance to be filled in to this object's `ref` field. If the string returned by `readUTF` has length zero, the `readObject` method is invoked on `in`, and than the value returned by `readObject` is cast to `RemoteRef` and this object's `ref` field is set to that value. Otherwise, this object's `ref` field is set to a `RemoteRef` instance that is created of an implementation-specific class corresponding to the external ref type name returned by `readUTF`, and then the `readExternal` method is invoked on this object's `ref` field.

        If the external ref type name is `"UnicastRef"`, `"UnicastServerRef"`, `"UnicastRef2"`, or `"UnicastServerRef2"`, a corresponding implementation-specific class must be found, and its `readExternal` method must read the serial data for that external ref type name as specified to be written in the serialData documentation for this class. If the external ref type name is any other string (of non-zero length), a `ClassNotFoundException` will be thrown, unless the implementation provides an implementation-specific class corresponding to that external ref type name, in which case this object's `ref` field will be set to an instance of that implementation-specific class.

        Parameters:
          `in` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        `writeObject` for custom serialization.

        This method writes this object's serialized form for this class as follows:

        The `getRefClass` method is invoked on this object's `ref` field to obtain its external ref type name. If the value returned by `getRefClass` was a non-`null` string of length greater than zero, the `writeUTF` method is invoked on `out` with the value returned by `getRefClass`, and then the `writeExternal` method is invoked on this object's `ref` field passing `out` as the argument; otherwise, the `writeUTF` method is invoked on `out` with a zero-length string (`""`), and then the `writeObject` method is invoked on `out` passing this object's `ref` field as the argument.

        Serial Data:
          The serialized data for this class comprises a string (written with `ObjectOutput.writeUTF`) that is either the external ref type name of the contained `RemoteRef` instance (the `ref` field) or a zero-length string, followed by either the external form of the `ref` field as written by its `writeExternal` method if the string was of non-zero length, or the serialized form of the `ref` field as written by passing it to the serialization stream's `writeObject` if the string was of zero length.

          If this object is an instance of `RemoteStub` or `RemoteObjectInvocationHandler` that was returned from any of the `UnicastRemoteObject.exportObject` methods and custom socket factories are not used, the external ref type name is `"UnicastRef"`. If this object is an instance of `RemoteStub` or `RemoteObjectInvocationHandler` that was returned from any of the `UnicastRemoteObject.exportObject` methods and custom socket factories are used, the external ref type name is `"UnicastRef2"`. If this object is an instance of `RemoteStub` or `RemoteObjectInvocationHandler` that was returned from the `RemoteObject.toStub` method (and the argument passed to `toStub` was not itself a `RemoteStub`), the external ref type name is a function of how the remote object passed to `toStub` was exported, as described above. If this object is an instance of `RemoteStub` or `RemoteObjectInvocationHandler` that was originally created via deserialization, the external ref type name is the same as that which was read when this object was deserialized.

          If this object is an instance of `java.rmi.server.UnicastRemoteObject` that does not use custom socket factories, the external ref type name is `"UnicastServerRef"`. If this object is an instance of `UnicastRemoteObject` that does use custom socket factories, the external ref type name is `"UnicastServerRef2"`.

          Following is the data that must be written by the `writeExternal` method and read by the `readExternal` method of `RemoteRef` implementation classes that correspond to the each of the defined external ref type names:

          For `"UnicastRef"`:

          - the hostname of the referenced remote object, written by `DataOutput.writeUTF(String)`
          - the port of the referenced remote object, written by `DataOutput.writeInt(int)`
          - the data written as a result of calling `ObjID.write(java.io.ObjectOutput)` on the `ObjID` instance contained in the reference
          - the boolean value `false`, written by `DataOutput.writeBoolean(boolean)`

          For `"UnicastRef2"` with a `null` client socket factory:

          - the byte value `0x00` (indicating `null` client socket factory), written by `DataOutput.writeByte(int)`
          - the hostname of the referenced remote object, written by `DataOutput.writeUTF(String)`
          - the port of the referenced remote object, written by `DataOutput.writeInt(int)`
          - the data written as a result of calling `ObjID.write(java.io.ObjectOutput)` on the `ObjID` instance contained in the reference
          - the boolean value `false`, written by `DataOutput.writeBoolean(boolean)`

          For `"UnicastRef2"` with a non-`null` client socket factory:

          - the byte value `0x01` (indicating non-`null` client socket factory), written by `DataOutput.writeByte(int)`
          - the hostname of the referenced remote object, written by `DataOutput.writeUTF(String)`
          - the port of the referenced remote object, written by `DataOutput.writeInt(int)`
          - a client socket factory (object of type `java.rmi.server.RMIClientSocketFactory`), written by passing it to an invocation of `writeObject` on the stream instance
          - the data written as a result of calling `ObjID.write(java.io.ObjectOutput)` on the `ObjID` instance contained in the reference
          - the boolean value `false`, written by `DataOutput.writeBoolean(boolean)`

          For `"UnicastServerRef"` and `"UnicastServerRef2"`, no data is written by the `writeExternal` method or read by the `readExternal` method.

        Parameters:
          `out` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

  - ### Class java.rmi.server.RemoteObjectInvocationHandler

    class RemoteObjectInvocationHandler extends RemoteObject implements Serializable
    serialVersionUID:
      2L

    - #### Serialization Methods

      - ##### readObjectNoData

        private void readObjectNoData() throws InvalidObjectException
        Throws:
          `InvalidObjectException` - unconditionally

  - ### Class java.rmi.server.RemoteServer

    class RemoteServer extends RemoteObject implements Serializable
    serialVersionUID:
      -4100238210092549637L

  - ### Class java.rmi.server.RemoteStub

    class RemoteStub extends RemoteObject implements Serializable
    serialVersionUID:
      -1585587260594494182L

  - ### Exception Class java.rmi.server.ServerCloneException

    class ServerCloneException extends CloneNotSupportedException implements Serializable
    serialVersionUID:
      6617456357664815945L

    - #### Serialized Fields

      - ##### detail

            Exception detail

        The cause of the exception.

        This field predates the general-purpose exception chaining facility. The `Throwable.getCause()` method is now the preferred means of obtaining this information.

  - ### Exception Class java.rmi.server.ServerNotActiveException

    class ServerNotActiveException extends Exception implements Serializable
    serialVersionUID:
      4687940720827538231L

  - ### Exception Class java.rmi.server.SkeletonMismatchException

    class SkeletonMismatchException extends RemoteException implements Serializable
    serialVersionUID:
      -7780460454818859281L

  - ### Exception Class java.rmi.server.SkeletonNotFoundException

    class SkeletonNotFoundException extends RemoteException implements Serializable
    serialVersionUID:
      -7860299673822761231L

  - ### Exception Class java.rmi.server.SocketSecurityException

    class SocketSecurityException extends ExportException implements Serializable
    serialVersionUID:
      -7622072999407781979L

  - ### Class java.rmi.server.UID

    class UID extends Object implements Serializable
    serialVersionUID:
      1086053664494604050L

    - #### Serialized Fields

      - ##### count

            short count

        16-bit number to distinguish `UID` instances created in the same VM with the same time value

      - ##### time

            long time

        a time (as returned by `System.currentTimeMillis()`) at which the VM that this `UID` was generated in was alive

      - ##### unique

            int unique

        number that uniquely identifies the VM that this `UID` was generated in with respect to its host and at the given time

  - ### Class java.rmi.server.UnicastRemoteObject

    class UnicastRemoteObject extends RemoteServer implements Serializable
    serialVersionUID:
      4974527148936298033L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Re-export the remote object when it is deserialized.
        Parameters:
          `in` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

    - #### Serialized Fields

      - ##### csf

            RMIClientSocketFactory csf

        client-side socket factory (if any)

      - ##### port

            int port

        port number on which to export object

      - ##### ssf

            RMIServerSocketFactory ssf

        server-side socket factory (if any) to use when exporting object

- ## Package java.security

  - ### Exception Class java.security.AccessControlException

    class AccessControlException extends SecurityException implements Serializable
    serialVersionUID:
      5138225684096988535L

    - #### Serialized Fields

      - ##### perm

            Permission perm

        Deprecated, for removal: This API element is subject to removal in a future version.
        The permission that caused the exception to be thrown.

  - ### Class java.security.AllPermissionCollection

    class AllPermissionCollection extends PermissionCollection implements Serializable
    serialVersionUID:
      -4023755556366636806L

    - #### Serialized Fields

      - ##### all_allowed

            boolean all_allowed

        True if any `AllPermissionCollection` objects have been added.

  - ### Class java.security.AuthProvider

    class AuthProvider extends Provider implements Serializable
    serialVersionUID:
      4197859053084546461L

  - ### Class java.security.BasicPermission

    class BasicPermission extends Permission implements Serializable
    serialVersionUID:
      6279438298436773498L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        `readObject` is called to restore the state of the `BasicPermission` from a stream.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

  - ### Class java.security.BasicPermissionCollection

    class BasicPermissionCollection extends PermissionCollection implements Serializable
    serialVersionUID:
      739301742472979399L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the `BasicPermissionCollection` from a stream.
        Parameters:
          `in` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Writes the contents of the perms field out as a Hashtable for serialization compatibility with earlier releases. all_allowed and permClass unchanged.
        Parameters:
          `out` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### all_allowed

            boolean all_allowed

        This is set to `true` if this `BasicPermissionCollection` contains a `BasicPermission` object with '*' as its permission name.

      - ##### permClass

            Class permClass

        The class to which all `BasicPermission` objectss in this `BasicPermissionCollection` belongs.

      - ##### permissions

            Hashtable permissions

        The `BasicPermission` objects in this `BasicPermissionCollection`. All `BasicPermission` objects in the collection must belong to the same class. The Hashtable is indexed by the `BasicPermission` name; the value of the Hashtable entry is the permission.

  - ### Class java.security.CodeSigner

    class CodeSigner extends Object implements Serializable
    serialVersionUID:
      6819288105193937581L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Restores the state of this object from the stream, and explicitly resets hash code value to -1.
        Parameters:
          `ois` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

    - #### Serialized Fields

      - ##### signerCertPath

            CertPath signerCertPath

        The signer's certificate path.

      - ##### timestamp

            Timestamp timestamp

        The signature timestamp.

  - ### Class java.security.CodeSource

    class CodeSource extends Object implements Serializable
    serialVersionUID:
      4977541819976013951L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Restores this object from a stream (i.e., deserializes it).
        Parameters:
          `ois` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream oos) throws IOException
        Writes this object out to a stream (i.e., serializes it).
        Serial Data:
          An initial `URL` is followed by an `int` indicating the number of certificates to follow (a value of "zero" denotes that there are no certificates associated with this object). Each certificate is written out starting with a `String` denoting the certificate type, followed by an `int` specifying the length of the certificate encoding, followed by the certificate encoding itself which is written out as an array of bytes. Finally, if any code signers are present then the array of code signers is serialized and written out too.
        Parameters:
          `oos` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### location

            URL location

        The code location.

  - ### Exception Class java.security.DigestException

    class DigestException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      5821450303093652515L

  - ### Exception Class java.security.GeneralSecurityException

    class GeneralSecurityException extends Exception implements Serializable
    serialVersionUID:
      894798122053539237L

  - ### Class java.security.GuardedObject

    class GuardedObject extends Object implements Serializable
    serialVersionUID:
      -5240450096227834308L

    - #### Serialization Methods

      - ##### writeObject

        private void writeObject(ObjectOutputStream oos) throws IOException
        Writes this object out to a stream (i.e., serializes it). We check the guard if there is one.
        Parameters:
          `oos` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### guard

            Guard guard

        The guard object.

      - ##### object

            Object object

        The object we are guarding.

  - ### Class java.security.Identity

    class Identity extends Object implements Serializable
    serialVersionUID:
      3609922007826600659L

    - #### Serialized Fields

      - ##### certificates

            Vector<Certificate> certificates

        Deprecated, for removal: This API element is subject to removal in a future version.
        The certificates for this `Identity`.

      - ##### info

            String info

        Deprecated, for removal: This API element is subject to removal in a future version.
        Generic, descriptive information about the `Identity`.

      - ##### name

            String name

        Deprecated, for removal: This API element is subject to removal in a future version.
        The name for this `Identity`.

      - ##### publicKey

            PublicKey publicKey

        Deprecated, for removal: This API element is subject to removal in a future version.
        The public key for this `Identity`.

      - ##### scope

            IdentityScope scope

        Deprecated, for removal: This API element is subject to removal in a future version.
        The scope of the `Identity`.

  - ### Class java.security.IdentityScope

    class IdentityScope extends Identity implements Serializable
    serialVersionUID:
      -2337346281189773310L

  - ### Exception Class java.security.InvalidAlgorithmParameterException

    class InvalidAlgorithmParameterException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      2864672297499471472L

  - ### Exception Class java.security.InvalidKeyException

    class InvalidKeyException extends KeyException implements Serializable
    serialVersionUID:
      5698479920593359816L

  - ### Exception Class java.security.InvalidParameterException

    class InvalidParameterException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      -857968536935667808L

  - ### Exception Class java.security.KeyException

    class KeyException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      -7483676942812432108L

  - ### Exception Class java.security.KeyManagementException

    class KeyManagementException extends KeyException implements Serializable
    serialVersionUID:
      947674216157062695L

  - ### Class java.security.KeyPair

    class KeyPair extends Object implements Serializable
    serialVersionUID:
      -7565189502268009837L

    - #### Serialized Fields

      - ##### privateKey

            PrivateKey privateKey

        The private key.

      - ##### publicKey

            PublicKey publicKey

        The public key.

  - ### Class java.security.KeyRep

    class KeyRep extends Object implements Serializable
    serialVersionUID:
      -4757683898830641853L

    - #### Serialization Methods

      - ##### readResolve

        protected Object readResolve() throws ObjectStreamException
        Resolve the Key object.

        This method supports three Type/format combinations:

        - Type.SECRET/"RAW" - returns a SecretKeySpec object constructed using encoded key bytes and algorithm
        - Type.PUBLIC/"X.509" - gets a KeyFactory instance for the key algorithm, constructs an X509EncodedKeySpec with the encoded key bytes, and generates a public key from the spec
        - Type.PRIVATE/"PKCS#8" - gets a KeyFactory instance for the key algorithm, constructs a PKCS8EncodedKeySpec with the encoded key bytes, and generates a private key from the spec
        Throws:
          `ObjectStreamException` - if the Type/format combination is unrecognized, if the algorithm, key format, or encoded key bytes are unrecognized/invalid, of if the resolution of the key fails for any reason

    - #### Serialized Fields

      - ##### algorithm

            String algorithm

        The Key algorithm

      - ##### encoded

            byte[] encoded

        The encoded Key bytes

      - ##### format

            String format

        The Key encoding format

      - ##### type

            KeyRep.Type type

        Either one of Type.SECRET, Type.PUBLIC, or Type.PRIVATE

  - ### Exception Class java.security.KeyStoreException

    class KeyStoreException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      -1119353179322377262L

  - ### Exception Class java.security.NoSuchAlgorithmException

    class NoSuchAlgorithmException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      -7443947487218346562L

  - ### Exception Class java.security.NoSuchProviderException

    class NoSuchProviderException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      8488111756688534474L

  - ### Class java.security.Permission

    class Permission extends Object implements Serializable
    serialVersionUID:
      -5636570222231596674L

    - #### Serialized Fields

      - ##### name

            String name

        The permission name.

  - ### Class java.security.PermissionCollection

    class PermissionCollection extends Object implements Serializable
    serialVersionUID:
      -6727011328946861783L

    - #### Serialized Fields

      - ##### readOnly

            boolean readOnly

        Whether this permission collection is read-only.

        If set, the `add` method will throw an exception.

  - ### Class java.security.PermissionsHash

    class PermissionsHash extends PermissionCollection implements Serializable
    serialVersionUID:
      -8491988220802933440L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Reads in a `Hashtable` of Permission/Permission and saves them in the permsMap field.
        Parameters:
          `in` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Writes the contents of the permsMap field out as a Hashtable for serialization compatibility with earlier releases.
        Parameters:
          `out` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### perms

            Hashtable perms

        A table of the permissions (both key and value are same).

  - ### Exception Class java.security.PrivilegedActionException

    class PrivilegedActionException extends Exception implements Serializable
    serialVersionUID:
      4724086851538908602L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes the `PrivilegedActionException` instance from a stream and initialize the cause properly when deserializing from an older version.

        The getException and getCause method returns the private "exception" field in the older implementation and `PrivilegedActionException::cause` was set to `null`.

        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        To maintain compatibility with older implementation, write a serial "exception" field with the cause as the value.
        Parameters:
          `out` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialization Overview

      - The exception thrown by the privileged computation that resulted in this `PrivilegedActionException`.

    - #### Serialized Fields

      - ##### exception

            Exception exception

        the thrown Exception

  - ### Class java.security.Provider

    class Provider extends Properties implements Serializable
    serialVersionUID:
      -4298000515446427739L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Reads the `ObjectInputStream` for the default serializable fields. If the serialized field `versionStr` is found in the STREAM FIELDS, its `String` value will be used to populate both the version string and version number. If `versionStr` is not found, but `version` is, then its double value will be used to populate both fields.
        Parameters:
          `in` - the `ObjectInputStream` to read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

    - #### Serialized Fields

      - ##### info

            String info

        A description of the provider and its services.

      - ##### name

            String name

        The provider name.

      - ##### version

            double version

        The provider version number.

      - ##### versionStr

            String versionStr

        The provider version string.

  - ### Exception Class java.security.ProviderException

    class ProviderException extends RuntimeException implements Serializable
    serialVersionUID:
      5256023526693665674L

  - ### Class java.security.SecureRandom

    class SecureRandom extends Random implements Serializable
    serialVersionUID:
      4940670005562187L

    - #### Serialized Fields

      - ##### algorithm

            String algorithm

        The algorithm name or `null` if unknown.
        Since:
          1.5

      - ##### counter

            long counter

      - ##### digest

            MessageDigest digest

      - ##### provider

            Provider provider

        The provider.
        Since:
          1.2

      - ##### randomBytes

            byte[] randomBytes

        We know that the MessageDigest class does not implement java.io.Serializable. However, since this field is no longer used, it will always be NULL and won't affect the serialization of the `SecureRandom` class itself.

      - ##### randomBytesUsed

            int randomBytesUsed

      - ##### secureRandomSpi

            SecureRandomSpi secureRandomSpi

        The provider implementation.
        Since:
          1.2

      - ##### state

            byte[] state

      - ##### threadSafe

            boolean threadSafe

        Thread safety.
        Since:
          9

  - ### Class java.security.SecureRandomSpi

    class SecureRandomSpi extends Object implements Serializable
    serialVersionUID:
      -2991854161009191830L

  - ### Class java.security.SecurityPermission

    class SecurityPermission extends BasicPermission implements Serializable
    serialVersionUID:
      5236109936224050470L

  - ### Exception Class java.security.SignatureException

    class SignatureException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      7509989324975124438L

  - ### Class java.security.SignedObject

    class SignedObject extends Object implements Serializable
    serialVersionUID:
      720502720485447167L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the `SignedObject` from a stream.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

    - #### Serialized Fields

      - ##### content

            byte[] content

        The original content is "deep copied" in its serialized format and stored in a byte array.

      - ##### signature

            byte[] signature

        The signature field is stored as a byte array.

      - ##### thealgorithm

            String thealgorithm

        The algorithm used to sign the object.

  - ### Class java.security.Signer

    class Signer extends Identity implements Serializable
    serialVersionUID:
      -1763464102261361480L

    - #### Serialized Fields

      - ##### privateKey

            PrivateKey privateKey

        Deprecated, for removal: This API element is subject to removal in a future version.
        The signer's private key.

  - ### Class java.security.Timestamp

    class Timestamp extends Object implements Serializable
    serialVersionUID:
      -5502683707821851294L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Restores the state of this object from the stream, and explicitly resets hash code value to -1.
        Parameters:
          `ois` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

    - #### Serialized Fields

      - ##### signerCertPath

            CertPath signerCertPath

        The TSA's certificate path.

      - ##### timestamp

            Date timestamp

        The timestamp's date and time

  - ### Exception Class java.security.UnrecoverableEntryException

    class UnrecoverableEntryException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      -4527142945246286535L

  - ### Exception Class java.security.UnrecoverableKeyException

    class UnrecoverableKeyException extends UnrecoverableEntryException implements Serializable
    serialVersionUID:
      7275063078190151277L

  - ### Class java.security.UnresolvedPermission

    class UnresolvedPermission extends Permission implements Serializable
    serialVersionUID:
      -4821973115467008846L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Restores this object from a stream (i.e., deserializes it).
        Parameters:
          `ois` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream oos) throws IOException
        Writes this object out to a stream (i.e., serializes it).
        Serial Data:
          An initial `String` denoting the `type` is followed by a `String` denoting the `name` is followed by a `String` denoting the `actions` is followed by an `int` indicating the number of certificates to follow (a value of "zero" denotes that there are no certificates associated with this object). Each certificate is written out starting with a `String` denoting the certificate type, followed by an `int` specifying the length of the certificate encoding, followed by the certificate encoding itself which is written out as an array of bytes.
        Parameters:
          `oos` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### actions

            String actions

        The actions of the permission.

      - ##### name

            String name

        The permission name.

      - ##### type

            String type

        The class name of the Permission class that will be created when this unresolved permission is resolved.

  - ### Class java.security.UnresolvedPermissionCollection

    class UnresolvedPermissionCollection extends PermissionCollection implements Serializable
    serialVersionUID:
      -7176153071733132400L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Reads in a Hashtable in which the values are Vectors of UnresolvedPermissions and saves them in the perms field.
        Parameters:
          `in` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Writes the contents of the perms field out as a Hashtable in which the values are Vectors for serialization compatibility with earlier releases.
        Parameters:
          `out` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### permissions

            Hashtable permissions

        A table of the UnresolvedPermissions keyed on type, value is Vector of permissions

- ## Package java.security.cert

  - ### Class java.security.cert.Certificate

    class Certificate extends Object implements Serializable
    serialVersionUID:
      -3585440601605666277L

    - #### Serialization Methods

      - ##### writeReplace

        protected Object writeReplace() throws ObjectStreamException
        Replace the `Certificate` to be serialized with a `CertificateRep` object containing the type and encoded bytes of the `Certificate`.
        Throws:
          `ObjectStreamException` - if a `CertificateRep` object representing this `Certificate` could not be created
        Since:
          1.3

  - ### Class java.security.cert.Certificate.CertificateRep

    class CertificateRep extends Object implements Serializable
    serialVersionUID:
      -8563758940495660020L

    - #### Serialization Methods

      - ##### readResolve

        protected Object readResolve() throws ObjectStreamException
        Returns a `Certificate` with the type and data of this `CertificateRep`.
        Throws:
          `ObjectStreamException` - if the `Certificate` could not be resolved

    - #### Serialized Fields

      - ##### data

            byte[] data

        The certificate data.

      - ##### type

            String type

        The standard name of the certificate type.

  - ### Exception Class java.security.cert.CertificateEncodingException

    class CertificateEncodingException extends CertificateException implements Serializable
    serialVersionUID:
      6219492851589449162L

  - ### Exception Class java.security.cert.CertificateException

    class CertificateException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      3192535253797119798L

  - ### Exception Class java.security.cert.CertificateExpiredException

    class CertificateExpiredException extends CertificateException implements Serializable
    serialVersionUID:
      9071001339691533771L

  - ### Exception Class java.security.cert.CertificateNotYetValidException

    class CertificateNotYetValidException extends CertificateException implements Serializable
    serialVersionUID:
      4355919900041064702L

  - ### Exception Class java.security.cert.CertificateParsingException

    class CertificateParsingException extends CertificateException implements Serializable
    serialVersionUID:
      -7989222416793322029L

  - ### Exception Class java.security.cert.CertificateRevokedException

    class CertificateRevokedException extends CertificateException implements Serializable
    serialVersionUID:
      7839996631571608627L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Deserialize the `CertificateRevokedException` instance.
        Parameters:
          `ois` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream oos) throws IOException
        Serialize this `CertificateRevokedException` instance.
        Serial Data:
          the size of the extensions map (int), followed by all the extensions in the map, in no particular order. For each extension, the following data is emitted: the OID String (Object), the criticality flag (boolean), the length of the encoded extension value byte array (int), and the encoded extension value bytes.
        Parameters:
          `oos` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### authority

            X500Principal authority

        the `X500Principal` that represents the name of the authority that signed the certificate's revocation status information

      - ##### reason

            CRLReason reason

        the revocation reason

      - ##### revocationDate

            Date revocationDate

        the date on which the certificate was revoked

  - ### Class java.security.cert.CertPath

    class CertPath extends Object implements Serializable
    serialVersionUID:
      6068470306649138683L

    - #### Serialization Methods

      - ##### writeReplace

        protected Object writeReplace() throws ObjectStreamException
        Replaces the `CertPath` to be serialized with a `CertPathRep` object containing the `Certificate` type and encoded bytes of the `CertPath`.
        Throws:
          `ObjectStreamException` - if a `CertPathRep` object representing this certification path could not be created

  - ### Class java.security.cert.CertPath.CertPathRep

    class CertPathRep extends Object implements Serializable
    serialVersionUID:
      3015633072427920915L

    - #### Serialization Methods

      - ##### readResolve

        protected Object readResolve() throws ObjectStreamException
        Returns a `CertPath` constructed from the type and data of this `CertPathRep`.
        Throws:
          `ObjectStreamException` - if a `CertPath` object could not be constructed

    - #### Serialized Fields

      - ##### data

            byte[] data

        The encoded form of the `CertPath`.

      - ##### type

            String type

        The type of `Certificate`s in the `CertPath`.

  - ### Exception Class java.security.cert.CertPathBuilderException

    class CertPathBuilderException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      5316471420178794402L

  - ### Exception Class java.security.cert.CertPathValidatorException

    class CertPathValidatorException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      -3083180014971893139L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream stream) throws ClassNotFoundException, IOException
        Restores the state of this object from the stream.
        Parameters:
          `stream` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

    - #### Serialized Fields

      - ##### certPath

            CertPath certPath

        the `CertPath` that was being validated when the exception was thrown

      - ##### index

            int index

        the index of the certificate in the certification path that caused the exception to be thrown

      - ##### reason

            CertPathValidatorException.Reason reason

        the reason the validation failed

  - ### Exception Class java.security.cert.CertStoreException

    class CertStoreException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      2395296107471573245L

  - ### Exception Class java.security.cert.CRLException

    class CRLException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      -6694728944094197147L

  - ### Class java.security.cert.X509Certificate

    class X509Certificate extends Certificate implements Serializable
    serialVersionUID:
      -2491127588187038216L

- ## Package java.security.interfaces

- ## Package java.security.spec

  - ### Exception Class java.security.spec.InvalidKeySpecException

    class InvalidKeySpecException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      3546139293998810778L

  - ### Exception Class java.security.spec.InvalidParameterSpecException

    class InvalidParameterSpecException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      -970468769593399342L

- ## Package java.sql

  - ### Exception Class java.sql.BatchUpdateException

    class BatchUpdateException extends SQLException implements Serializable
    serialVersionUID:
      5977529877145521757L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the `BatchUpdateException` from a stream.
        Parameters:
          `s` - the `ObjectInputStream` to read from.
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found.
          `IOException` - if an I/O error occurs.

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        writeObject is called to save the state of the `BatchUpdateException` to a stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write to.
        Throws:
          `IOException` - if an I/O error occurs.

    - #### Serialized Fields

      - ##### longUpdateCounts

            long[] longUpdateCounts

        The array that describes the outcome of a batch execution.
        Since:
          1.8

      - ##### updateCounts

            int[] updateCounts

        The array that describes the outcome of a batch execution.
        Since:
          1.2

  - ### Exception Class java.sql.DataTruncation

    class DataTruncation extends SQLWarning implements Serializable
    serialVersionUID:
      6464298989504059473L

    - #### Serialized Fields

      - ##### dataSize

            int dataSize

      - ##### index

            int index

      - ##### parameter

            boolean parameter

      - ##### read

            boolean read

      - ##### transferSize

            int transferSize

  - ### Class java.sql.Date

    class Date extends Date implements Serializable
    serialVersionUID:
      1511598038487230103L

  - ### Exception Class java.sql.SQLClientInfoException

    class SQLClientInfoException extends SQLException implements Serializable
    serialVersionUID:
      -4319604256824655880L

    - #### Serialized Fields

      - ##### failedProperties

            Map<String,ClientInfoStatus> failedProperties

        A `Map` containing the client info properties that could not be set.

  - ### Exception Class java.sql.SQLDataException

    class SQLDataException extends SQLNonTransientException implements Serializable
    serialVersionUID:
      -6889123282670549800L

  - ### Exception Class java.sql.SQLException

    class SQLException extends Exception implements Serializable
    serialVersionUID:
      2135244094396331484L

    - #### Serialized Fields

      - ##### next

            SQLException next

      - ##### SQLState

            String SQLState

      - ##### vendorCode

            int vendorCode

  - ### Exception Class java.sql.SQLFeatureNotSupportedException

    class SQLFeatureNotSupportedException extends SQLNonTransientException implements Serializable
    serialVersionUID:
      -1026510870282316051L

  - ### Exception Class java.sql.SQLIntegrityConstraintViolationException

    class SQLIntegrityConstraintViolationException extends SQLNonTransientException implements Serializable
    serialVersionUID:
      8033405298774849169L

  - ### Exception Class java.sql.SQLInvalidAuthorizationSpecException

    class SQLInvalidAuthorizationSpecException extends SQLNonTransientException implements Serializable
    serialVersionUID:
      -64105250450891498L

  - ### Exception Class java.sql.SQLNonTransientConnectionException

    class SQLNonTransientConnectionException extends SQLNonTransientException implements Serializable
    serialVersionUID:
      -5852318857474782892L

  - ### Exception Class java.sql.SQLNonTransientException

    class SQLNonTransientException extends SQLException implements Serializable
    serialVersionUID:
      -9104382843534716547L

  - ### Class java.sql.SQLPermission

    class SQLPermission extends BasicPermission implements Serializable
    serialVersionUID:
      -1439323187199563495L

  - ### Exception Class java.sql.SQLRecoverableException

    class SQLRecoverableException extends SQLException implements Serializable
    serialVersionUID:
      -4144386502923131579L

  - ### Exception Class java.sql.SQLSyntaxErrorException

    class SQLSyntaxErrorException extends SQLNonTransientException implements Serializable
    serialVersionUID:
      -1843832610477496053L

  - ### Exception Class java.sql.SQLTimeoutException

    class SQLTimeoutException extends SQLTransientException implements Serializable
    serialVersionUID:
      -4487171280562520262L

  - ### Exception Class java.sql.SQLTransactionRollbackException

    class SQLTransactionRollbackException extends SQLTransientException implements Serializable
    serialVersionUID:
      5246680841170837229L

  - ### Exception Class java.sql.SQLTransientConnectionException

    class SQLTransientConnectionException extends SQLTransientException implements Serializable
    serialVersionUID:
      -2520155553543391200L

  - ### Exception Class java.sql.SQLTransientException

    class SQLTransientException extends SQLException implements Serializable
    serialVersionUID:
      -9042733978262274539L

  - ### Exception Class java.sql.SQLWarning

    class SQLWarning extends SQLException implements Serializable
    serialVersionUID:
      3917336774604784856L

  - ### Class java.sql.Time

    class Time extends Date implements Serializable
    serialVersionUID:
      8397324403548013681L

  - ### Class java.sql.Timestamp

    class Timestamp extends Date implements Serializable
    serialVersionUID:
      2745179027874758501L

    - #### Serialized Fields

      - ##### nanos

            int nanos

- ## Package java.text

  - ### Class java.text.AttributedCharacterIterator.Attribute

    class Attribute extends Object implements Serializable
    serialVersionUID:
      -9142742483513960612L

    - #### Serialization Methods

      - ##### readResolve

        protected Object readResolve() throws InvalidObjectException
        Resolves instances being deserialized to the predefined constants.
        Throws:
          `InvalidObjectException` - if the object to resolve is not an instance of `Attribute`

    - #### Serialized Fields

      - ##### name

            String name

        The name of this `Attribute`. The name is used primarily by `readResolve` to look up the corresponding predefined instance when deserializing an instance.

  - ### Class java.text.ChoiceFormat

    class ChoiceFormat extends NumberFormat implements Serializable
    serialVersionUID:
      1795184449645032964L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        After reading an object from the input stream, do a simple verification to maintain class invariants.
        Throws:
          `InvalidObjectException` - if the objects read from the stream is invalid.
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### choiceFormats

            String[] choiceFormats

        A list of choice strings. The formatter will return `choiceFormats[i]` if the number being formatted is greater than or equal to `choiceLimits[i]` and less than `choiceLimits[i+1]`.

      - ##### choiceLimits

            double[] choiceLimits

        A list of lower bounds for the choices. The formatter will return `choiceFormats[i]` if the number being formatted is greater than or equal to `choiceLimits[i]` and less than `choiceLimits[i+1]`.

  - ### Class java.text.CompactNumberFormat

    class CompactNumberFormat extends NumberFormat implements Serializable
    serialVersionUID:
      7128367218649234678L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream inStream) throws IOException, ClassNotFoundException
        Reconstitutes this `CompactNumberFormat` from a stream (that is, deserializes it) after performing some validations. This method throws InvalidObjectException, if the stream data is invalid because of the following reasons,
        - If any of the `decimalPattern`, `compactPatterns`, `symbols` or `roundingMode` is `null`.
        - If the `decimalPattern` or the `compactPatterns` array contains an invalid pattern or if a `null` appears in the array of compact patterns.
        - If the `minimumIntegerDigits` is greater than the `maximumIntegerDigits` or the `minimumFractionDigits` is greater than the `maximumFractionDigits`. This check is performed by superclass's Object.
        - If any of the minimum/maximum integer/fraction digit count is negative. This check is performed by superclass's readObject.
        - If the minimum or maximum integer digit count is larger than 309 or if the minimum or maximum fraction digit count is larger than 340.
        - If the grouping size is negative or larger than 127.
        If the `pluralRules` field is not deserialized from the stream, it will be set to an empty string.
        Parameters:
          `inStream` - the stream
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if the class of a serialized object could not be found

    - #### Serialized Fields

      - ##### compactPatterns

            String[] compactPatterns

        The patterns for compact form of numbers for this `CompactNumberFormat`. A possible example is `{"", "", "", "0K", "00K", "000K", "0M", "00M", "000M", "0B", "00B", "000B", "0T", "00T", "000T"}` ranging from `10``0`-`10``14`, where each pattern is used to format a range of numbers. For example, `"0K"` is used for formatting `number >= 1000 and number < 10000`, `"00K"` is used for formatting `number >= 10000 and number < 100000` and so on. This field must not be `null`.

      - ##### decimalPattern

            String decimalPattern

        The decimal pattern which is used for formatting the numbers matching special pattern "0". This field must not be `null`.
        See Also:
          - `DecimalFormat`

      - ##### groupingSize

            byte groupingSize

        The number of digits between grouping separators in the integer portion of a compact number. For the grouping to work while formatting, this field needs to be greater than 0 with grouping used set as true. This field must not be negative.

      - ##### parseBigDecimal

            boolean parseBigDecimal

        Returns whether the `CompactNumberFormat.parse(String, ParsePosition)` method returns `BigDecimal`.

      - ##### pluralRules

            String pluralRules

        The `pluralRules` used in this compact number format. `pluralRules` is a String designating plural rules which associate the `Count` keyword, such as "`one`", and the actual integer number. Its syntax is defined in Unicode Consortium's Plural rules syntax. The default value is an empty string, meaning there is no plural rules.
        Since:
          14

      - ##### roundingMode

            RoundingMode roundingMode

        The `RoundingMode` used in this compact number format. This field must not be `null`.

      - ##### symbols

            DecimalFormatSymbols symbols

        The `DecimalFormatSymbols` object used by this format. It contains the symbols used to format numbers. For example, the grouping separator, decimal separator, and so on. This field must not be `null`.
        See Also:
          - `DecimalFormatSymbols`

  - ### Class java.text.DateFormat

    class DateFormat extends Format implements Serializable
    serialVersionUID:
      7218322306649953788L

    - #### Serialized Fields

      - ##### calendar

            Calendar calendar

        The `Calendar` instance used for calculating the date-time fields and the instant of time. This field is used for both formatting and parsing.

        Subclasses should initialize this field to a `Calendar` appropriate for the `Locale` associated with this `DateFormat`.

      - ##### numberFormat

            NumberFormat numberFormat

        The number formatter that `DateFormat` uses to format numbers in dates and times. Subclasses should initialize this to a number format appropriate for the locale associated with this `DateFormat`.

  - ### Class java.text.DateFormat.Field

    class Field extends Format.Field implements Serializable
    serialVersionUID:
      7441350119349544720L

    - #### Serialization Methods

      - ##### readResolve

        protected Object readResolve() throws InvalidObjectException
        Resolves instances being deserialized to the predefined constants.
        Throws:
          `InvalidObjectException` - if the constant could not be resolved.

    - #### Serialized Fields

      - ##### calendarField

            int calendarField

        Calendar field.

  - ### Class java.text.DateFormatSymbols

    class DateFormatSymbols extends Object implements Serializable
    serialVersionUID:
      -5987973545549424702L

    - #### Serialization Methods

      - ##### writeObject

        private void writeObject(ObjectOutputStream stream) throws IOException
        Write out the default serializable data, after ensuring the `zoneStrings` field is initialized in order to make sure the backward compatibility.
        Throws:
          `IOException`
        Since:
          1.6

    - #### Serialized Fields

      - ##### ampms

            String[] ampms

        AM and PM strings. For example: "AM" and "PM". An array of 2 strings, indexed by `Calendar.AM` and `Calendar.PM`.

      - ##### eras

            String[] eras

        Era strings. For example: "AD" and "BC". An array of 2 strings, indexed by `Calendar.BC` and `Calendar.AD`.

      - ##### locale

            Locale locale

        The locale which is used for initializing this DateFormatSymbols object.
        Since:
          1.6

      - ##### localPatternChars

            String localPatternChars

        Localized date-time pattern characters. For example, a locale may wish to use 'u' rather than 'y' to represent years in its date format pattern strings. This string must be exactly 18 characters long, with the index of the characters described by `DateFormat.ERA_FIELD`, `DateFormat.YEAR_FIELD`, etc. Thus, if the string were "Xz...", then localized patterns would use 'X' for era and 'z' for year.

      - ##### months

            String[] months

        Month strings. For example: "January", "February", etc. An array of 13 strings (some calendars have 13 months), indexed by `Calendar.JANUARY`, `Calendar.FEBRUARY`, etc.

      - ##### shortMonths

            String[] shortMonths

        Short month strings. For example: "Jan", "Feb", etc. An array of 13 strings (some calendars have 13 months), indexed by `Calendar.JANUARY`, `Calendar.FEBRUARY`, etc.

      - ##### shortWeekdays

            String[] shortWeekdays

        Short weekday strings. For example: "Sun", "Mon", etc. An array of 8 strings, indexed by `Calendar.SUNDAY`, `Calendar.MONDAY`, etc. The element `shortWeekdays[0]` is ignored.

      - ##### weekdays

            String[] weekdays

        Weekday strings. For example: "Sunday", "Monday", etc. An array of 8 strings, indexed by `Calendar.SUNDAY`, `Calendar.MONDAY`, etc. The element `weekdays[0]` is ignored.

      - ##### zoneStrings

            String[][] zoneStrings

        Localized names of time zones in this locale. This is a two-dimensional array of strings of size n by m, where m is at least 5. Each of the n rows is an entry containing the localized names for a single `TimeZone`. Each such row contains (with `i` ranging from 0..n-1):
        - `zoneStrings[i][0]` - time zone ID
        - `zoneStrings[i][1]` - long name of zone in standard time
        - `zoneStrings[i][2]` - short name of zone in standard time
        - `zoneStrings[i][3]` - long name of zone in daylight saving time
        - `zoneStrings[i][4]` - short name of zone in daylight saving time
        The zone ID is not localized; it's one of the valid IDs of the `TimeZone` class that are not custom IDs. All other entries are localized names.
        See Also:
          - `TimeZone`

  - ### Class java.text.DecimalFormat

    class DecimalFormat extends NumberFormat implements Serializable
    serialVersionUID:
      864413376551465018L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
        Reads the default serializable fields from the stream and performs validations and adjustments for older serialized versions. The validations and adjustments are:
        1. Verify that the superclass's digit count fields correctly reflect the limits imposed on formatting numbers other than `BigInteger` and `BigDecimal` objects. These limits are stored in the superclass for serialization compatibility with older versions, while the limits for `BigInteger` and `BigDecimal` objects are kept in this class. If, in the superclass, the minimum or maximum integer digit count is larger than `DOUBLE_INTEGER_DIGITS` or if the minimum or maximum fraction digit count is larger than `DOUBLE_FRACTION_DIGITS`, then the stream data is invalid and this method throws an `InvalidObjectException`.
        2. If `serialVersionOnStream` is less than 4, initialize `roundingMode` to `RoundingMode.HALF_EVEN`. This field is new with version 4.
        3. If `serialVersionOnStream` is less than 3, then call the setters for the minimum and maximum integer and fraction digits with the values of the corresponding superclass getters to initialize the fields in this class. The fields in this class are new with version 3.
        4. If `serialVersionOnStream` is less than 1, indicating that the stream was written by JDK 1.1, initialize `useExponentialNotation` to false, since it was not present in JDK 1.1.
        5. Set `serialVersionOnStream` to the maximum allowed value so that default serialization will work properly if this object is streamed out again.

        Stream versions older than 2 will not have the affix pattern variables `posPrefixPattern` etc. As a result, they will be initialized to `null`, which means the affix strings will be taken as literal values. This is exactly what we want, since that corresponds to the pre-version-2 behavior.

        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### decimalSeparatorAlwaysShown

            boolean decimalSeparatorAlwaysShown

        If true, forces the decimal separator to always appear in a formatted number, even if the fractional part of the number is zero.
        See Also:
          - `DecimalFormat.isDecimalSeparatorAlwaysShown()`

      - ##### groupingSize

            byte groupingSize

        The number of digits between grouping separators in the integer portion of a number. Must be non-negative and less than or equal to `Byte.MAX_VALUE` if `NumberFormat.groupingUsed` is true.
        See Also:
          - `DecimalFormat.getGroupingSize()`
          - `NumberFormat.isGroupingUsed()`

      - ##### maximumFractionDigits

            int maximumFractionDigits

        The maximum number of digits allowed in the fractional portion of a `BigInteger` or `BigDecimal` number. `maximumFractionDigits` must be greater than or equal to `minimumFractionDigits`.
        Since:
          1.5
        See Also:
          - `DecimalFormat.getMaximumFractionDigits()`

      - ##### maximumIntegerDigits

            int maximumIntegerDigits

        The maximum number of digits allowed in the integer portion of a `BigInteger` or `BigDecimal` number. `maximumIntegerDigits` must be greater than or equal to `minimumIntegerDigits`.
        Since:
          1.5
        See Also:
          - `DecimalFormat.getMaximumIntegerDigits()`

      - ##### minExponentDigits

            byte minExponentDigits

        The minimum number of digits used to display the exponent when a number is formatted in exponential notation. This field is ignored if `useExponentialNotation` is not true.
        Since:
          1.2

      - ##### minimumFractionDigits

            int minimumFractionDigits

        The minimum number of digits allowed in the fractional portion of a `BigInteger` or `BigDecimal` number. `minimumFractionDigits` must be less than or equal to `maximumFractionDigits`.
        Since:
          1.5
        See Also:
          - `DecimalFormat.getMinimumFractionDigits()`

      - ##### minimumIntegerDigits

            int minimumIntegerDigits

        The minimum number of digits allowed in the integer portion of a `BigInteger` or `BigDecimal` number. `minimumIntegerDigits` must be less than or equal to `maximumIntegerDigits`.
        Since:
          1.5
        See Also:
          - `DecimalFormat.getMinimumIntegerDigits()`

      - ##### multiplier

            int multiplier

        The multiplier for use in percent, per mille, etc.
        See Also:
          - `DecimalFormat.getMultiplier()`

      - ##### negativePrefix

            String negativePrefix

        The symbol used as a prefix when formatting negative numbers, e.g. "-".
        See Also:
          - `DecimalFormat.getNegativePrefix()`

      - ##### negativeSuffix

            String negativeSuffix

        The symbol used as a suffix when formatting negative numbers. This is often an empty string.
        See Also:
          - `DecimalFormat.getNegativeSuffix()`

      - ##### negPrefixPattern

            String negPrefixPattern

        The prefix pattern for negative numbers. This variable corresponds to `negativePrefix`. This variable is analogous to `posPrefixPattern`; see that variable for further documentation.
        Since:
          1.3

      - ##### negSuffixPattern

            String negSuffixPattern

        The suffix pattern for negative numbers. This variable corresponds to `negativeSuffix`. This variable is analogous to `posPrefixPattern`; see that variable for further documentation.
        Since:
          1.3

      - ##### parseBigDecimal

            boolean parseBigDecimal

        If true, parse returns BigDecimal wherever possible.
        Since:
          1.5
        See Also:
          - `DecimalFormat.isParseBigDecimal()`

      - ##### positivePrefix

            String positivePrefix

        The symbol used as a prefix when formatting positive numbers, e.g. "+".
        See Also:
          - `DecimalFormat.getPositivePrefix()`

      - ##### positiveSuffix

            String positiveSuffix

        The symbol used as a suffix when formatting positive numbers. This is often an empty string.
        See Also:
          - `DecimalFormat.getPositiveSuffix()`

      - ##### posPrefixPattern

            String posPrefixPattern

        The prefix pattern for non-negative numbers. This variable corresponds to `positivePrefix`.

        This pattern is expanded by the method `expandAffix()` to `positivePrefix` to update the latter to reflect changes in `symbols`. If this variable is `null` then `positivePrefix` is taken as a literal value that does not change when `symbols` changes. This variable is always `null` for `DecimalFormat` objects older than stream version 2 restored from stream.

        Since:
          1.3

      - ##### posSuffixPattern

            String posSuffixPattern

        The suffix pattern for non-negative numbers. This variable corresponds to `positiveSuffix`. This variable is analogous to `posPrefixPattern`; see that variable for further documentation.
        Since:
          1.3

      - ##### roundingMode

            RoundingMode roundingMode

        The `RoundingMode` used in this DecimalFormat.
        Since:
          1.6

      - ##### serialVersionOnStream

            int serialVersionOnStream

        The internal serial version which says which version was written. Possible values are:
        - 0 (default): versions before the Java 2 platform v1.2
        - 1: version for 1.2, which includes the two new fields `useExponentialNotation` and `minExponentDigits`.
        - 2: version for 1.3 and later, which adds four new fields: `posPrefixPattern`, `posSuffixPattern`, `negPrefixPattern`, and `negSuffixPattern`.
        - 3: version for 1.5 and later, which adds five new fields: `maximumIntegerDigits`, `minimumIntegerDigits`, `maximumFractionDigits`, `minimumFractionDigits`, and `parseBigDecimal`.
        - 4: version for 1.6 and later, which adds one new field: `roundingMode`.
        Since:
          1.2

      - ##### symbols

            DecimalFormatSymbols symbols

        The `DecimalFormatSymbols` object used by this format. It contains the symbols used to format numbers, e.g. the grouping separator, decimal separator, and so on.
        See Also:
          - `DecimalFormat.setDecimalFormatSymbols(java.text.DecimalFormatSymbols)`
          - `DecimalFormatSymbols`

      - ##### useExponentialNotation

            boolean useExponentialNotation

        True to force the use of exponential (i.e. scientific) notation when formatting numbers.
        Since:
          1.2

  - ### Class java.text.DecimalFormatSymbols

    class DecimalFormatSymbols extends Object implements Serializable
    serialVersionUID:
      5772796243397350300L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
        Reads the default serializable fields, provides default values for objects in older serial versions, and initializes non-serializable fields. If `serialVersionOnStream` is less than 1, initializes `monetarySeparator` to be the same as `decimalSeparator` and `exponential` to be 'E'. If `serialVersionOnStream` is less than 2, initializes `locale` to the root locale, and initializes If `serialVersionOnStream` is less than 3, it initializes `exponentialSeparator` using `exponential`. If `serialVersionOnStream` is less than 4, it initializes `perMillText`, `percentText`, and `minusSignText` using `perMill`, `percent`, and `minusSign` respectively. If `serialVersionOnStream` is less than 5, it initializes `monetaryGroupingSeparator` using `groupingSeparator`. Sets `serialVersionOnStream` back to the maximum allowed value so that default serialization will work properly if this object is streamed out again. Initializes the currency from the intlCurrencySymbol field.
        Throws:
          `InvalidObjectException` - if `char` and `String` representations of either percent, per mille, and/or minus sign disagree.
          `IOException`
          `ClassNotFoundException`
        Since:
          1.1.6

    - #### Serialized Fields

      - ##### currencySymbol

            String currencySymbol

        String denoting the local currency, e.g. "$".
        See Also:
          - `DecimalFormatSymbols.getCurrencySymbol()`

      - ##### decimalSeparator

            char decimalSeparator

        Character used for decimal sign.
        See Also:
          - `DecimalFormatSymbols.getDecimalSeparator()`

      - ##### digit

            char digit

        Character used for a digit in a pattern.
        See Also:
          - `DecimalFormatSymbols.getDigit()`

      - ##### exponential

            char exponential

        The character used to distinguish the exponent in a number formatted in exponential notation, e.g. 'E' for a number such as "1.23E45".

        Note that the public API provides no way to set this field, even though it is supported by the implementation and the stream format. The intent is that this will be added to the API in the future.

        Since:
          1.1.6

      - ##### exponentialSeparator

            String exponentialSeparator

        The string used to separate the mantissa from the exponent. Examples: "x10^" for 1.23x10^4, "E" for 1.23E4.

        If both `exponential` and `exponentialSeparator` exist, this `exponentialSeparator` has the precedence.

        Since:
          1.6

      - ##### groupingSeparator

            char groupingSeparator

        Character used for grouping separator.
        See Also:
          - `DecimalFormatSymbols.getGroupingSeparator()`

      - ##### infinity

            String infinity

        String used to represent infinity.
        See Also:
          - `DecimalFormatSymbols.getInfinity()`

      - ##### intlCurrencySymbol

            String intlCurrencySymbol

        ISO 4217 currency code denoting the local currency, e.g. "USD".
        See Also:
          - `DecimalFormatSymbols.getInternationalCurrencySymbol()`

      - ##### locale

            Locale locale

        The locale of these currency format symbols.
        Since:
          1.4

      - ##### minusSign

            char minusSign

        Character used to represent minus sign.
        See Also:
          - `DecimalFormatSymbols.getMinusSign()`

      - ##### minusSignText

            String minusSignText

        String representation of minus sign, which may include formatting characters, such as BiDi control characters. The first non-format character of this string is the same as `minusSign`.
        Since:
          13

      - ##### monetaryGroupingSeparator

            char monetaryGroupingSeparator

        The grouping separator used when formatting currency values.
        Since:
          15

      - ##### monetarySeparator

            char monetarySeparator

        The decimal separator used when formatting currency values.
        Since:
          1.1.6
        See Also:
          - `DecimalFormatSymbols.getMonetaryDecimalSeparator()`

      - ##### NaN

            String NaN

        String used to represent "not a number".
        See Also:
          - `DecimalFormatSymbols.getNaN()`

      - ##### patternSeparator

            char patternSeparator

        Character used to separate positive and negative subpatterns in a pattern.
        See Also:
          - `DecimalFormatSymbols.getPatternSeparator()`

      - ##### percent

            char percent

        Character used for percent sign.
        See Also:
          - `DecimalFormatSymbols.getPercent()`

      - ##### percentText

            String percentText

        String representation of percent sign, which may include formatting characters, such as BiDi control characters. The first non-format character of this string is the same as `percent`.
        Since:
          13

      - ##### perMill

            char perMill

        Character used for per mille sign.
        See Also:
          - `DecimalFormatSymbols.getPerMill()`

      - ##### perMillText

            String perMillText

        String representation of per mille sign, which may include formatting characters, such as BiDi control characters. The first non-format character of this string is the same as `perMill`.
        Since:
          13

      - ##### serialVersionOnStream

            int serialVersionOnStream

        Describes the version of `DecimalFormatSymbols` present on the stream. Possible values are:
        - 0 (or uninitialized): versions prior to JDK 1.1.6.
        - 1: Versions written by JDK 1.1.6 or later, which include two new fields: `monetarySeparator` and `exponential`.
        - 2: Versions written by J2SE 1.4 or later, which include a new `locale` field.
        - 3: Versions written by J2SE 1.6 or later, which include a new `exponentialSeparator` field.
        - 4: Versions written by Java SE 13 or later, which include new `perMillText`, `percentText`, and `minusSignText` field.
        - 5: Versions written by Java SE 15 or later, which include new `monetaryGroupingSeparator` field. *
        When streaming out a `DecimalFormatSymbols`, the most recent format (corresponding to the highest allowable `serialVersionOnStream`) is always written.
        Since:
          1.1.6

      - ##### zeroDigit

            char zeroDigit

        Character used for zero.
        See Also:
          - `DecimalFormatSymbols.getZeroDigit()`

  - ### Class java.text.Format

    class Format extends Object implements Serializable
    serialVersionUID:
      -299282585814624189L

  - ### Class java.text.Format.Field

    class Field extends AttributedCharacterIterator.Attribute implements Serializable
    serialVersionUID:
      276966692217360283L

  - ### Class java.text.MessageFormat

    class MessageFormat extends Format implements Serializable
    serialVersionUID:
      6479157306784022952L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        After reading an object from the input stream, do a simple verification to maintain class invariants.
        Throws:
          `InvalidObjectException` - if the objects read from the stream is invalid.
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### argumentNumbers

            int[] argumentNumbers

        The argument numbers corresponding to each formatter. (The formatters are stored in the order they occur in the pattern, not in the order in which the arguments are specified.)

      - ##### formats

            Format[] formats

        An array of formatters, which are used to format the arguments.

      - ##### locale

            Locale locale

        The locale to use for formatting numbers and dates.

      - ##### maxOffset

            int maxOffset

        One less than the number of entries in `offsets`. Can also be thought of as the index of the highest-numbered element in `offsets` that is being used. All of these arrays should have the same number of elements being used as `offsets` does, and so this variable suffices to tell us how many entries are in all of them.

      - ##### offsets

            int[] offsets

        The positions where the results of formatting each argument are to be inserted into the pattern.

      - ##### pattern

            String pattern

        The string that the formatted values are to be plugged into. In other words, this is the pattern supplied on construction with all of the {} expressions taken out.

  - ### Class java.text.MessageFormat.Field

    class Field extends Format.Field implements Serializable
    serialVersionUID:
      7899943957617360810L

    - #### Serialization Methods

      - ##### readResolve

        protected Object readResolve() throws InvalidObjectException
        Resolves instances being deserialized to the predefined constants.
        Throws:
          `InvalidObjectException` - if the constant could not be resolved.

  - ### Class java.text.NumberFormat

    class NumberFormat extends Format implements Serializable
    serialVersionUID:
      -2308460125733713944L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
        First, read in the default serializable data. Then, if `serialVersionOnStream` is less than 1, indicating that the stream was written by JDK 1.1, set the `int` fields such as `maximumIntegerDigits` to be equal to the `byte` fields such as `maxIntegerDigits`, since the `int` fields were not present in JDK 1.1. Finally, set serialVersionOnStream back to the maximum allowed value so that default serialization will work properly if this object is streamed out again.

        If `minimumIntegerDigits` is greater than `maximumIntegerDigits` or `minimumFractionDigits` is greater than `maximumFractionDigits`, then the stream data is invalid and this method throws an `InvalidObjectException`. In addition, if any of these values is negative, then this method throws an `InvalidObjectException`.

        Throws:
          `IOException`
          `ClassNotFoundException`
        Since:
          1.2

      - ##### writeObject

        private void writeObject(ObjectOutputStream stream) throws IOException
        Write out the default serializable data, after first setting the `byte` fields such as `maxIntegerDigits` to be equal to the `int` fields such as `maximumIntegerDigits` (or to `Byte.MAX_VALUE`, whichever is smaller), for compatibility with the JDK 1.1 version of the stream format.
        Throws:
          `IOException`
        Since:
          1.2

    - #### Serialized Fields

      - ##### groupingUsed

            boolean groupingUsed

        True if the grouping (i.e. thousands) separator is used when formatting and parsing numbers.
        See Also:
          - `NumberFormat.isGroupingUsed()`

      - ##### maxFractionDigits

            byte maxFractionDigits

        The maximum number of digits allowed in the fractional portion of a number. `maximumFractionDigits` must be greater than or equal to `minimumFractionDigits`.

        Note: This field exists only for serialization compatibility with JDK 1.1. In Java platform 2 v1.2 and higher, the new `int` field `maximumFractionDigits` is used instead. When writing to a stream, `maxFractionDigits` is set to `maximumFractionDigits` or `Byte.MAX_VALUE`, whichever is smaller. When reading from a stream, this field is used only if `serialVersionOnStream` is less than 1.

        See Also:
          - `NumberFormat.getMaximumFractionDigits()`

      - ##### maximumFractionDigits

            int maximumFractionDigits

        The maximum number of digits allowed in the fractional portion of a number. `maximumFractionDigits` must be greater than or equal to `minimumFractionDigits`.
        Since:
          1.2
        See Also:
          - `NumberFormat.getMaximumFractionDigits()`

      - ##### maximumIntegerDigits

            int maximumIntegerDigits

        The maximum number of digits allowed in the integer portion of a number. `maximumIntegerDigits` must be greater than or equal to `minimumIntegerDigits`.
        Since:
          1.2
        See Also:
          - `NumberFormat.getMaximumIntegerDigits()`

      - ##### maxIntegerDigits

            byte maxIntegerDigits

        The maximum number of digits allowed in the integer portion of a number. `maxIntegerDigits` must be greater than or equal to `minIntegerDigits`.

        Note: This field exists only for serialization compatibility with JDK 1.1. In Java platform 2 v1.2 and higher, the new `int` field `maximumIntegerDigits` is used instead. When writing to a stream, `maxIntegerDigits` is set to `maximumIntegerDigits` or `Byte.MAX_VALUE`, whichever is smaller. When reading from a stream, this field is used only if `serialVersionOnStream` is less than 1.

        See Also:
          - `NumberFormat.getMaximumIntegerDigits()`

      - ##### minFractionDigits

            byte minFractionDigits

        The minimum number of digits allowed in the fractional portion of a number. `minimumFractionDigits` must be less than or equal to `maximumFractionDigits`.

        Note: This field exists only for serialization compatibility with JDK 1.1. In Java platform 2 v1.2 and higher, the new `int` field `minimumFractionDigits` is used instead. When writing to a stream, `minFractionDigits` is set to `minimumFractionDigits` or `Byte.MAX_VALUE`, whichever is smaller. When reading from a stream, this field is used only if `serialVersionOnStream` is less than 1.

        See Also:
          - `NumberFormat.getMinimumFractionDigits()`

      - ##### minimumFractionDigits

            int minimumFractionDigits

        The minimum number of digits allowed in the fractional portion of a number. `minimumFractionDigits` must be less than or equal to `maximumFractionDigits`.
        Since:
          1.2
        See Also:
          - `NumberFormat.getMinimumFractionDigits()`

      - ##### minimumIntegerDigits

            int minimumIntegerDigits

        The minimum number of digits allowed in the integer portion of a number. `minimumIntegerDigits` must be less than or equal to `maximumIntegerDigits`.
        Since:
          1.2
        See Also:
          - `NumberFormat.getMinimumIntegerDigits()`

      - ##### minIntegerDigits

            byte minIntegerDigits

        The minimum number of digits allowed in the integer portion of a number. `minimumIntegerDigits` must be less than or equal to `maximumIntegerDigits`.

        Note: This field exists only for serialization compatibility with JDK 1.1. In Java platform 2 v1.2 and higher, the new `int` field `minimumIntegerDigits` is used instead. When writing to a stream, `minIntegerDigits` is set to `minimumIntegerDigits` or `Byte.MAX_VALUE`, whichever is smaller. When reading from a stream, this field is used only if `serialVersionOnStream` is less than 1.

        See Also:
          - `NumberFormat.getMinimumIntegerDigits()`

      - ##### parseIntegerOnly

            boolean parseIntegerOnly

        True if this format will parse numbers as integers only.
        See Also:
          - `NumberFormat.isParseIntegerOnly()`

      - ##### serialVersionOnStream

            int serialVersionOnStream

        Describes the version of `NumberFormat` present on the stream. Possible values are:
        - 0 (or uninitialized): the JDK 1.1 version of the stream format. In this version, the `int` fields such as `maximumIntegerDigits` were not present, and the `byte` fields such as `maxIntegerDigits` are used instead.
        - 1: the 1.2 version of the stream format. The values of the `byte` fields such as `maxIntegerDigits` are ignored, and the `int` fields such as `maximumIntegerDigits` are used instead.
        When streaming out a `NumberFormat`, the most recent format (corresponding to the highest allowable `serialVersionOnStream`) is always written.
        Since:
          1.2

  - ### Class java.text.NumberFormat.Field

    class Field extends Format.Field implements Serializable
    serialVersionUID:
      7494728892700160890L

    - #### Serialization Methods

      - ##### readResolve

        protected Object readResolve() throws InvalidObjectException
        Resolves instances being deserialized to the predefined constants.
        Throws:
          `InvalidObjectException` - if the constant could not be resolved.

  - ### Exception Class java.text.ParseException

    class ParseException extends Exception implements Serializable
    serialVersionUID:
      2703218443322787634L

    - #### Serialized Fields

      - ##### errorOffset

            int errorOffset

        The zero-based character offset into the string being parsed at which the error was found during parsing.

  - ### Class java.text.SimpleDateFormat

    class SimpleDateFormat extends DateFormat implements Serializable
    serialVersionUID:
      4774881970558875024L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
        After reading an object from the input stream, the format pattern in the object is verified.
        Throws:
          `InvalidObjectException` - if the pattern is invalid
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### defaultCenturyStart

            Date defaultCenturyStart

        We map dates with two-digit years into the century starting at `defaultCenturyStart`, which may be any date. May not be null.
        Since:
          1.1.4

      - ##### formatData

            DateFormatSymbols formatData

        The symbols used by this formatter for week names, month names, etc. May not be null.
        See Also:
          - `DateFormatSymbols`

      - ##### locale

            Locale locale

        The Locale used to instantiate this `SimpleDateFormat`. The value may be null if this object has been created by an older `SimpleDateFormat` and deserialized.
        Since:
          1.6

      - ##### pattern

            String pattern

        The pattern string of this formatter. This is always a non-localized pattern. May not be null. See class documentation for details.

      - ##### serialVersionOnStream

            int serialVersionOnStream

        The version of the serialized data on the stream. Possible values:
        - 0 or not present on stream: JDK 1.1.3. This version has no `defaultCenturyStart` on stream.
        - 1 JDK 1.1.4 or later. This version adds `defaultCenturyStart`.
        When streaming out this class, the most recent format and the highest allowable `serialVersionOnStream` is written.
        Since:
          1.1.4

- ## Package java.time

  - ### Exception Class java.time.DateTimeException

    class DateTimeException extends RuntimeException implements Serializable
    serialVersionUID:
      -1632418723876261839L

  - ### Class java.time.Duration

    class Duration extends Object implements Serializable
    serialVersionUID:
      3078945930695997490L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(1);  // identifies a Duration
                out.writeLong(seconds);
                out.writeInt(nanos);

    - #### Serialized Fields

      - ##### nanos

            int nanos

        The number of nanoseconds in the duration, expressed as a fraction of the number of seconds. This is always positive, and never exceeds 999,999,999.

      - ##### seconds

            long seconds

        The number of seconds in the duration.

  - ### Class java.time.Instant

    class Instant extends Object implements Serializable
    serialVersionUID:
      -665713676816604388L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(2);  // identifies an Instant
                out.writeLong(seconds);
                out.writeInt(nanos);

    - #### Serialized Fields

      - ##### nanos

            int nanos

        The number of nanoseconds, later along the time-line, from the seconds field. This is always positive, and never exceeds 999,999,999.

      - ##### seconds

            long seconds

        The number of seconds from the epoch of 1970-01-01T00:00:00Z.

  - ### Class java.time.LocalDate

    class LocalDate extends Object implements Serializable
    serialVersionUID:
      2942565459149668126L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(3);  // identifies a LocalDate
                out.writeInt(year);
                out.writeByte(month);
                out.writeByte(day);

    - #### Serialized Fields

      - ##### day

            short day

        The day-of-month.

      - ##### month

            short month

        The month-of-year.

      - ##### year

            int year

        The year.

  - ### Class java.time.LocalDateTime

    class LocalDateTime extends Object implements Serializable
    serialVersionUID:
      6207766400415563566L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(5);  // identifies a LocalDateTime
                // the date excluding the one byte header
                // the time excluding the one byte header

    - #### Serialized Fields

      - ##### date

            LocalDate date

        The date part.

      - ##### time

            LocalTime time

        The time part.

  - ### Class java.time.LocalTime

    class LocalTime extends Object implements Serializable
    serialVersionUID:
      6414437269572265201L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:
          A twos-complement value indicates the remaining values are not in the stream and should be set to zero.

                out.writeByte(4);  // identifies a LocalTime
                if (nano == 0) {
                  if (second == 0) {
                    if (minute == 0) {
                      out.writeByte(~hour);
                    } else {
                      out.writeByte(hour);
                      out.writeByte(~minute);
                    }
                  } else {
                    out.writeByte(hour);
                    out.writeByte(minute);
                    out.writeByte(~second);
                  }
                } else {
                  out.writeByte(hour);
                  out.writeByte(minute);
                  out.writeByte(second);
                  out.writeInt(nano);
                }

    - #### Serialized Fields

      - ##### hour

            byte hour

        The hour.

      - ##### minute

            byte minute

        The minute.

      - ##### nano

            int nano

        The nanosecond.

      - ##### second

            byte second

        The second.

  - ### Class java.time.MonthDay

    class MonthDay extends Object implements Serializable
    serialVersionUID:
      -939150713474957432L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(13);  // identifies a MonthDay
                out.writeByte(month);
                out.writeByte(day);

    - #### Serialized Fields

      - ##### day

            int day

        The day-of-month.

      - ##### month

            int month

        The month-of-year, not null.

  - ### Class java.time.OffsetDateTime

    class OffsetDateTime extends Object implements Serializable
    serialVersionUID:
      2287754244819255394L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(10);  // identifies an OffsetDateTime
                // the datetime excluding the one byte header
                // the offset excluding the one byte header

    - #### Serialized Fields

      - ##### dateTime

            LocalDateTime dateTime

        The local date-time.

      - ##### offset

            ZoneOffset offset

        The offset from UTC/Greenwich.

  - ### Class java.time.OffsetTime

    class OffsetTime extends Object implements Serializable
    serialVersionUID:
      7264499704384272492L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(9);  // identifies an OffsetTime
                // the time excluding the one byte header
                // the offset excluding the one byte header

    - #### Serialized Fields

      - ##### offset

            ZoneOffset offset

        The offset from UTC/Greenwich.

      - ##### time

            LocalTime time

        The local date-time.

  - ### Class java.time.Period

    class Period extends Object implements Serializable
    serialVersionUID:
      -3587258372562876L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(14);  // identifies a Period
                out.writeInt(years);
                out.writeInt(months);
                out.writeInt(days);

    - #### Serialized Fields

      - ##### days

            int days

        The number of days.

      - ##### months

            int months

        The number of months.

      - ##### years

            int years

        The number of years.

  - ### Class java.time.Ser

    class Ser extends Object implements Externalizable
    serialVersionUID:
      -7683839454370182990L

    - #### Serialization Methods

      - ##### readExternal

        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
        Implements the `Externalizable` interface to read the object.
        Serial Data:
          The streamed type and parameters defined by the type's `writeReplace` method are read and passed to the corresponding static factory for the type to create a new instance. That instance is returned as the de-serialized `Ser` object.
          - Duration - `Duration.ofSeconds(seconds, nanos);`
          - Instant - `Instant.ofEpochSecond(seconds, nanos);`
          - LocalDate - `LocalDate.of(year, month, day);`
          - LocalDateTime - `LocalDateTime.of(date, time);`
          - LocalTime - `LocalTime.of(hour, minute, second, nano);`
          - MonthDay - `MonthDay.of(month, day);`
          - OffsetTime - `OffsetTime.of(time, offset);`
          - OffsetDateTime - `OffsetDateTime.of(dateTime, offset);`
          - Period - `Period.of(years, months, days);`
          - Year - `Year.of(year);`
          - YearMonth - `YearMonth.of(year, month);`
          - ZonedDateTime - `ZonedDateTime.ofLenient(dateTime, offset, zone);`
          - ZoneId - `ZoneId.of(id);`
          - ZoneOffset - `(offsetByte == 127 ? ZoneOffset.ofTotalSeconds(in.readInt()) : ZoneOffset.ofTotalSeconds(offsetByte * 900));`
        Parameters:
          `in` - the data to read, not null
        Throws:
          `IOException` - if I/O errors occur
          `ClassNotFoundException` - If the class for an object being restored cannot be found.

      - ##### writeExternal

        public void writeExternal(ObjectOutput out) throws IOException
        Implements the `Externalizable` interface to write the object.
        Serial Data:
          Each serializable class is mapped to a type that is the first byte in the stream. Refer to each class `writeReplace` serialized form for the value of the type and sequence of values for the type.
          - Duration.writeReplace
          - Instant.writeReplace
          - LocalDate.writeReplace
          - LocalDateTime.writeReplace
          - LocalTime.writeReplace
          - MonthDay.writeReplace
          - OffsetTime.writeReplace
          - OffsetDateTime.writeReplace
          - Period.writeReplace
          - Year.writeReplace
          - YearMonth.writeReplace
          - ZoneId.writeReplace
          - ZoneOffset.writeReplace
          - ZonedDateTime.writeReplace
        Parameters:
          `out` - the data stream to write to, not null
        Throws:
          `IOException` - Includes any I/O exceptions that may occur

  - ### Class java.time.Year

    class Year extends Object implements Serializable
    serialVersionUID:
      -23038383694477807L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(11);  // identifies a Year
                out.writeInt(year);

    - #### Serialized Fields

      - ##### year

            int year

        The year being represented.

  - ### Class java.time.YearMonth

    class YearMonth extends Object implements Serializable
    serialVersionUID:
      4183400860270640070L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(12);  // identifies a YearMonth
                out.writeInt(year);
                out.writeByte(month);

    - #### Serialized Fields

      - ##### month

            int month

        The month-of-year, not null.

      - ##### year

            int year

        The year.

  - ### Class java.time.ZonedDateTime

    class ZonedDateTime extends Object implements Serializable
    serialVersionUID:
      -6260982410461394882L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(6);  // identifies a ZonedDateTime
                // the dateTime excluding the one byte header
                // the offset excluding the one byte header
                // the zone ID excluding the one byte header

    - #### Serialized Fields

      - ##### dateTime

            LocalDateTime dateTime

        The local date-time.

      - ##### offset

            ZoneOffset offset

        The offset from UTC/Greenwich.

      - ##### zone

            ZoneId zone

        The time-zone.

  - ### Class java.time.ZoneId

    class ZoneId extends Object implements Serializable
    serialVersionUID:
      8352817235686L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(7);  // identifies a ZoneId (not ZoneOffset)
                out.writeUTF(getId());

          When read back in, the `ZoneId` will be created as though using `ZoneId.of(String)`, but without any exception in the case where the ID has a valid format, but is not in the known set of region-based IDs.

  - ### Class java.time.ZoneOffset

    class ZoneOffset extends ZoneId implements Serializable
    serialVersionUID:
      2357656521762053153L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(8);                  // identifies a ZoneOffset
                int offsetByte = totalSeconds % 900 == 0 ? totalSeconds / 900 : 127;
                out.writeByte(offsetByte);
                if (offsetByte == 127) {
                    out.writeInt(totalSeconds);
                }

    - #### Serialized Fields

      - ##### totalSeconds

            int totalSeconds

        The total offset in seconds.

- ## Package java.time.chrono

  - ### Class java.time.chrono.ChronoLocalDateTimeImpl

    class ChronoLocalDateTimeImpl extends Object implements Serializable
    serialVersionUID:
      4556003607393004514L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the ChronoLocalDateTime using a dedicated serialized form.
        Serial Data:

                out.writeByte(2);              // identifies a ChronoLocalDateTime
                out.writeObject(toLocalDate());
                out.writeObject(toLocalTime());

  - ### Class java.time.chrono.ChronoZonedDateTimeImpl

    class ChronoZonedDateTimeImpl extends Object implements Serializable
    serialVersionUID:
      -5261813987200935591L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the ChronoZonedDateTime using a dedicated serialized form.
        Serial Data:

                out.writeByte(3);                  // identifies a ChronoZonedDateTime
                out.writeObject(toLocalDateTime());
                out.writeObject(getOffset());
                out.writeObject(getZone());

  - ### Class java.time.chrono.HijrahChronology

    class HijrahChronology extends AbstractChronology implements Serializable
    serialVersionUID:
      3127340209035924785L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        Object writeReplace()
        Writes the Chronology using a dedicated serialized form.
        Serial Data:

                out.writeByte(1);     // identifies a Chronology
                out.writeUTF(getId());

  - ### Class java.time.chrono.HijrahDate

    class HijrahDate extends java.time.chrono.ChronoLocalDateImpl<HijrahDate> implements Serializable
    serialVersionUID:
      -5207853542612002020L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(6);                 // identifies a HijrahDate
                out.writeObject(chrono);          // the HijrahChronology variant
                out.writeInt(get(YEAR));
                out.writeByte(get(MONTH_OF_YEAR));
                out.writeByte(get(DAY_OF_MONTH));

  - ### Class java.time.chrono.IsoChronology

    class IsoChronology extends AbstractChronology implements Serializable
    serialVersionUID:
      -1440403870442975015L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        Object writeReplace()
        Writes the Chronology using a dedicated serialized form.
        Serial Data:

                out.writeByte(1);     // identifies a Chronology
                out.writeUTF(getId());

  - ### Class java.time.chrono.JapaneseChronology

    class JapaneseChronology extends AbstractChronology implements Serializable
    serialVersionUID:
      459996390165777884L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        Object writeReplace()
        Writes the Chronology using a dedicated serialized form.
        Serial Data:

                out.writeByte(1);     // identifies a Chronology
                out.writeUTF(getId());

  - ### Class java.time.chrono.JapaneseDate

    class JapaneseDate extends java.time.chrono.ChronoLocalDateImpl<JapaneseDate> implements Serializable
    serialVersionUID:
      -305327627230580483L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(4);                 // identifies a JapaneseDate
                out.writeInt(get(YEAR));
                out.writeByte(get(MONTH_OF_YEAR));
                out.writeByte(get(DAY_OF_MONTH));

  - ### Class java.time.chrono.JapaneseEra

    class JapaneseEra extends Object implements Serializable
    serialVersionUID:
      1466499369062886794L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(5);        // identifies a JapaneseEra
                out.writeInt(getValue());

  - ### Class java.time.chrono.MinguoChronology

    class MinguoChronology extends AbstractChronology implements Serializable
    serialVersionUID:
      1039765215346859963L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        Object writeReplace()
        Writes the Chronology using a dedicated serialized form.
        Serial Data:

                out.writeByte(1);     // identifies a Chronology
                out.writeUTF(getId());

  - ### Class java.time.chrono.MinguoDate

    class MinguoDate extends java.time.chrono.ChronoLocalDateImpl<MinguoDate> implements Serializable
    serialVersionUID:
      1300372329181994526L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(8);                 // identifies a MinguoDate
                out.writeInt(get(YEAR));
                out.writeByte(get(MONTH_OF_YEAR));
                out.writeByte(get(DAY_OF_MONTH));

  - ### Class java.time.chrono.Ser

    class Ser extends Object implements Externalizable
    serialVersionUID:
      -6103370247208168577L

    - #### Serialization Methods

      - ##### readExternal

        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
        Implements the `Externalizable` interface to read the object.
        Serial Data:
          The streamed type and parameters defined by the type's `writeReplace` method are read and passed to the corresponding static factory for the type to create a new instance. That instance is returned as the de-serialized `Ser` object.
          - HijrahChronology - Chronology.of(id)
          - IsoChronology - Chronology.of(id)
          - JapaneseChronology - Chronology.of(id)
          - MinguoChronology - Chronology.of(id)
          - ThaiBuddhistChronology - Chronology.of(id)
          - ChronoLocalDateTime - date.atTime(time)
          - ChronoZonedDateTime - dateTime.atZone(offset).withZoneSameLocal(zone)
          - JapaneseDate - JapaneseChronology.INSTANCE.date(year, month, dayOfMonth)
          - JapaneseEra - JapaneseEra.of(eraValue)
          - HijrahDate - HijrahChronology chrono.date(year, month, dayOfMonth)
          - MinguoDate - MinguoChronology.INSTANCE.date(year, month, dayOfMonth)
          - ThaiBuddhistDate - ThaiBuddhistChronology.INSTANCE.date(year, month, dayOfMonth)
        Parameters:
          `in` - the data stream to read from, not null
        Throws:
          `IOException` - if I/O errors occur
          `ClassNotFoundException` - If the class for an object being restored cannot be found.

      - ##### writeExternal

        public void writeExternal(ObjectOutput out) throws IOException
        Implements the `Externalizable` interface to write the object.
        Serial Data:
          Each serializable class is mapped to a type that is the first byte in the stream. Refer to each class `writeReplace` serialized form for the value of the type and sequence of values for the type.
          - HijrahChronology.writeReplace
          - IsoChronology.writeReplace
          - JapaneseChronology.writeReplace
          - MinguoChronology.writeReplace
          - ThaiBuddhistChronology.writeReplace
          - ChronoLocalDateTime.writeReplace
          - ChronoZonedDateTime.writeReplace
          - JapaneseDate.writeReplace
          - JapaneseEra.writeReplace
          - HijrahDate.writeReplace
          - MinguoDate.writeReplace
          - ThaiBuddhistDate.writeReplace
        Parameters:
          `out` - the data stream to write to, not null
        Throws:
          `IOException` - Includes any I/O exceptions that may occur

  - ### Class java.time.chrono.ThaiBuddhistChronology

    class ThaiBuddhistChronology extends AbstractChronology implements Serializable
    serialVersionUID:
      2775954514031616474L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        Object writeReplace()
        Writes the Chronology using a dedicated serialized form.
        Serial Data:

                out.writeByte(1);     // identifies a Chronology
                out.writeUTF(getId());

  - ### Class java.time.chrono.ThaiBuddhistDate

    class ThaiBuddhistDate extends java.time.chrono.ChronoLocalDateImpl<ThaiBuddhistDate> implements Serializable
    serialVersionUID:
      -8722293800195731463L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                out.writeByte(10);                // identifies a ThaiBuddhistDate
                out.writeInt(get(YEAR));
                out.writeByte(get(MONTH_OF_YEAR));
                out.writeByte(get(DAY_OF_MONTH));

- ## Package java.time.format

  - ### Exception Class java.time.format.DateTimeParseException

    class DateTimeParseException extends DateTimeException implements Serializable
    serialVersionUID:
      4304633501674722597L

    - #### Serialized Fields

      - ##### errorIndex

            int errorIndex

        The error index in the text.

      - ##### parsedString

            String parsedString

        The text that was being parsed.

- ## Package java.time.temporal

  - ### Exception Class java.time.temporal.UnsupportedTemporalTypeException

    class UnsupportedTemporalTypeException extends DateTimeException implements Serializable
    serialVersionUID:
      -6158898438688206006L

  - ### Class java.time.temporal.ValueRange

    class ValueRange extends Object implements Serializable
    serialVersionUID:
      -7317881728594519368L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException, InvalidObjectException
        Restore the state of an ValueRange from the stream. Check that the values are valid.
        Parameters:
          `s` - the stream to read
        Throws:
          `IOException` - if an I/O error occurs
          `InvalidObjectException` - if the smallest minimum is greater than the smallest maximum, or the smallest maximum is greater than the largest maximum or the largest minimum is greater than the largest maximum
          `ClassNotFoundException` - if a class cannot be resolved

    - #### Serialized Fields

      - ##### maxLargest

            long maxLargest

        The largest maximum value.

      - ##### maxSmallest

            long maxSmallest

        The smallest maximum value.

      - ##### minLargest

            long minLargest

        The largest minimum value.

      - ##### minSmallest

            long minSmallest

        The smallest minimum value.

  - ### Class java.time.temporal.WeekFields

    class WeekFields extends Object implements Serializable
    serialVersionUID:
      -1177360819670808121L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException, InvalidObjectException
        Restore the state of a WeekFields from the stream. Check that the values are valid.
        Parameters:
          `s` - the stream to read
        Throws:
          `IOException` - if an I/O error occurs
          `InvalidObjectException` - if the serialized object has an invalid value for firstDayOfWeek or minimalDays.
          `ClassNotFoundException` - if a class cannot be resolved

      - ##### readResolve

        private Object readResolve() throws InvalidObjectException
        Return the singleton WeekFields associated with the `firstDayOfWeek` and `minimalDays`.
        Throws:
          `InvalidObjectException` - if the serialized object has invalid values for firstDayOfWeek or minimalDays.

    - #### Serialized Fields

      - ##### firstDayOfWeek

            DayOfWeek firstDayOfWeek

        The first day-of-week.

      - ##### minimalDays

            int minimalDays

        The minimal number of days in the first week.

- ## Package java.time.zone

  - ### Class java.time.zone.Ser

    class Ser extends Object implements Externalizable
    serialVersionUID:
      -8885321777449118786L

    - #### Serialization Methods

      - ##### readExternal

        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
        Implements the `Externalizable` interface to read the object.
        Serial Data:
          The streamed type and parameters defined by the type's `writeReplace` method are read and passed to the corresponding static factory for the type to create a new instance. That instance is returned as the de-serialized `Ser` object.
          - ZoneRules - `ZoneRules.of(standardTransitions, standardOffsets, savingsInstantTransitions, wallOffsets, lastRules);`
          - ZoneOffsetTransition - `ZoneOffsetTransition of(LocalDateTime.ofEpochSecond(epochSecond), offsetBefore, offsetAfter);`
          - ZoneOffsetTransitionRule - `ZoneOffsetTransitionRule.of(month, dom, dow, time, timeEndOfDay, timeDefinition, standardOffset, offsetBefore, offsetAfter);`
        Parameters:
          `in` - the data to read, not null
        Throws:
          `IOException` - if I/O errors occur
          `ClassNotFoundException` - If the class for an object being restored cannot be found.

      - ##### writeExternal

        public void writeExternal(ObjectOutput out) throws IOException
        Implements the `Externalizable` interface to write the object.
        Serial Data:
          Each serializable class is mapped to a type that is the first byte in the stream. Refer to each class `writeReplace` serialized form for the value of the type and sequence of values for the type.
          - ZoneRules.writeReplace
          - ZoneOffsetTransition.writeReplace
          - ZoneOffsetTransitionRule.writeReplace
        Parameters:
          `out` - the data stream to write to, not null
        Throws:
          `IOException` - Includes any I/O exceptions that may occur

  - ### Class java.time.zone.ZoneOffsetTransition

    class ZoneOffsetTransition extends Object implements Serializable
    serialVersionUID:
      -6946044323557704546L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:
          Refer to the serialized form of ZoneRules.writeReplace for the encoding of epoch seconds and offsets.

                 out.writeByte(2);                // identifies a ZoneOffsetTransition
                 out.writeEpochSec(toEpochSecond);
                 out.writeOffset(offsetBefore);
                 out.writeOffset(offsetAfter);

    - #### Serialized Fields

      - ##### epochSecond

            long epochSecond

        The transition epoch-second.

      - ##### offsetAfter

            ZoneOffset offsetAfter

        The offset after transition.

      - ##### offsetBefore

            ZoneOffset offsetBefore

        The offset before transition.

      - ##### transition

            LocalDateTime transition

        The local transition date-time at the transition.

  - ### Class java.time.zone.ZoneOffsetTransitionRule

    class ZoneOffsetTransitionRule extends Object implements Serializable
    serialVersionUID:
      6889046316657758795L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:
          Refer to the serialized form of ZoneRules.writeReplace for the encoding of epoch seconds and offsets.

                    out.writeByte(3);                // identifies a ZoneOffsetTransitionRule
                    final int timeSecs = (timeEndOfDay ? 86400 : time.toSecondOfDay());
                    final int stdOffset = standardOffset.getTotalSeconds();
                    final int beforeDiff = offsetBefore.getTotalSeconds() - stdOffset;
                    final int afterDiff = offsetAfter.getTotalSeconds() - stdOffset;
                    final int timeByte = (timeSecs % 3600 == 0 ? (timeEndOfDay ? 24 : time.getHour()) : 31);
                    final int stdOffsetByte = (stdOffset % 900 == 0 ? stdOffset / 900 + 128 : 255);
                    final int beforeByte = (beforeDiff == 0 || beforeDiff == 1800 || beforeDiff == 3600 ? beforeDiff / 1800 : 3);
                    final int afterByte = (afterDiff == 0 || afterDiff == 1800 || afterDiff == 3600 ? afterDiff / 1800 : 3);
                    final int dowByte = (dow == null ? 0 : dow.getValue());
                    int b = (month.getValue() << 28) +          // 4 bits
                            ((dom + 32) << 22) +                // 6 bits
                            (dowByte << 19) +                   // 3 bits
                            (timeByte << 14) +                  // 5 bits
                            (timeDefinition.ordinal() << 12) +  // 2 bits
                            (stdOffsetByte << 4) +              // 8 bits
                            (beforeByte << 2) +                 // 2 bits
                            afterByte;                          // 2 bits
                    out.writeInt(b);
                    if (timeByte == 31) {
                        out.writeInt(timeSecs);
                    }
                    if (stdOffsetByte == 255) {
                        out.writeInt(stdOffset);
                    }
                    if (beforeByte == 3) {
                        out.writeInt(offsetBefore.getTotalSeconds());
                    }
                    if (afterByte == 3) {
                        out.writeInt(offsetAfter.getTotalSeconds());
                    }

    - #### Serialized Fields

      - ##### dom

            byte dom

        The day-of-month of the month-day of the cutover week. If positive, it is the start of the week where the cutover can occur. If negative, it represents the end of the week where cutover can occur. The value is the number of days from the end of the month, such that `-1` is the last day of the month, `-2` is the second to last day, and so on.

      - ##### dow

            DayOfWeek dow

        The cutover day-of-week, null to retain the day-of-month.

      - ##### month

            Month month

        The month of the month-day of the first day of the cutover week. The actual date will be adjusted by the dowChange field.

      - ##### offsetAfter

            ZoneOffset offsetAfter

        The offset after the cutover.

      - ##### offsetBefore

            ZoneOffset offsetBefore

        The offset before the cutover.

      - ##### standardOffset

            ZoneOffset standardOffset

        The standard offset at the cutover.

      - ##### time

            LocalTime time

        The cutover time in the 'before' offset.

      - ##### timeDefinition

            ZoneOffsetTransitionRule.TimeDefinition timeDefinition

        The definition of how the local time should be interpreted.

      - ##### timeEndOfDay

            boolean timeEndOfDay

        Whether the cutover time is midnight at the end of day.

  - ### Class java.time.zone.ZoneRules

    class ZoneRules extends Object implements Serializable
    serialVersionUID:
      3044319355680032515L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Defend against malicious streams.
        Parameters:
          `s` - the stream to read
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Writes the object using a dedicated serialized form.
        Serial Data:

                 out.writeByte(1);  // identifies a ZoneRules
                 out.writeInt(standardTransitions.length);
                 for (long trans : standardTransitions) {
                     Ser.writeEpochSec(trans, out);
                 }
                 for (ZoneOffset offset : standardOffsets) {
                     Ser.writeOffset(offset, out);
                 }
                 out.writeInt(savingsInstantTransitions.length);
                 for (long trans : savingsInstantTransitions) {
                     Ser.writeEpochSec(trans, out);
                 }
                 for (ZoneOffset offset : wallOffsets) {
                     Ser.writeOffset(offset, out);
                 }
                 out.writeByte(lastRules.length);
                 for (ZoneOffsetTransitionRule rule : lastRules) {
                     rule.writeExternal(out);
                 }

          Epoch second values used for offsets are encoded in a variable length form to make the common cases put fewer bytes in the stream.

                static void writeEpochSec(long epochSec, DataOutput out) throws IOException {
                   if (epochSec >= -4575744000L && epochSec < 10413792000L && epochSec % 900 == 0) {  // quarter hours between 1825 and 2300
                       int store = (int) ((epochSec + 4575744000L) / 900);
                       out.writeByte((store >>> 16) & 255);
                       out.writeByte((store >>> 8) & 255);
                       out.writeByte(store & 255);
                    } else {
                        out.writeByte(255);
                        out.writeLong(epochSec);
                    }
                }

          ZoneOffset values are encoded in a variable length form so the common cases put fewer bytes in the stream.

                static void writeOffset(ZoneOffset offset, DataOutput out) throws IOException {
                   final int offsetSecs = offset.getTotalSeconds();
                   int offsetByte = offsetSecs % 900 == 0 ? offsetSecs / 900 : 127;  // compress to -72 to +72
                   out.writeByte(offsetByte);
                   if (offsetByte == 127) {
                       out.writeInt(offsetSecs);
                   }
               }

    - #### Serialized Fields

      - ##### lastRules

            ZoneOffsetTransitionRule[] lastRules

        The last rule.

      - ##### savingsInstantTransitions

            long[] savingsInstantTransitions

        The transitions between instants (epoch seconds), sorted.

      - ##### savingsLocalTransitions

            LocalDateTime[] savingsLocalTransitions

        The transitions between local date-times, sorted. This is a paired array, where the first entry is the start of the transition and the second entry is the end of the transition.

      - ##### standardOffsets

            ZoneOffset[] standardOffsets

        The standard offsets.

      - ##### standardTransitions

            long[] standardTransitions

        The transitions between standard offsets (epoch seconds), sorted.

      - ##### wallOffsets

            ZoneOffset[] wallOffsets

        The wall offsets.

  - ### Exception Class java.time.zone.ZoneRulesException

    class ZoneRulesException extends DateTimeException implements Serializable
    serialVersionUID:
      -1632418723876261839L

- ## Package java.util

  - ### Class java.util.AbstractMap.SimpleEntry

    class SimpleEntry extends Object implements Serializable
    serialVersionUID:
      -8499721149061103585L

    - #### Serialized Fields

      - ##### key

            K key

      - ##### value

            V value

  - ### Class java.util.AbstractMap.SimpleImmutableEntry

    class SimpleImmutableEntry extends Object implements Serializable
    serialVersionUID:
      7138329143949025153L

    - #### Serialized Fields

      - ##### key

            K key

      - ##### value

            V value

  - ### Class java.util.ArrayDeque

    class ArrayDeque extends AbstractCollection<E> implements Serializable
    serialVersionUID:
      2340985798034038923L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this deque from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this deque to a stream (that is, serializes it).
        Serial Data:
          The current size (`int`) of the deque, followed by all of its elements (each an object reference) in first-to-last order.
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

  - ### Class java.util.ArrayList

    class ArrayList extends AbstractList<E> implements Serializable
    serialVersionUID:
      8683452581122892189L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes the `ArrayList` instance from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves the state of the `ArrayList` instance to a stream (that is, serializes it).
        Serial Data:
          The length of the array backing the `ArrayList` instance is emitted (int), followed by all of its elements (each an `Object`) in the proper order.
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### size

            int size

        The size of the ArrayList (the number of elements it contains).

  - ### Class java.util.Arrays.ArrayList

    class ArrayList extends AbstractList<E> implements Serializable
    serialVersionUID:
      -2764017481108945198L

    - #### Serialized Fields

      - ##### a

            E[] a

  - ### Class java.util.BitSet

    class BitSet extends Object implements Serializable
    serialVersionUID:
      7997698588986878753L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitute the `BitSet` instance from a stream (i.e., deserialize it).
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Save the state of the `BitSet` instance to a stream (i.e., serialize it).
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### bits

            long[] bits

        The bits in this BitSet. The ith bit is stored in bits[i/64] at bit position i % 64 (where bit position 0 refers to the least significant bit and 63 refers to the most significant bit).

  - ### Class java.util.Calendar

    class Calendar extends Object implements Serializable
    serialVersionUID:
      -1807547505821590642L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
        Reconstitutes this object from a stream (i.e., deserialize it).
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream stream) throws IOException
        Save the state of this object to a stream (i.e., serialize it). Ideally, `Calendar` would only write out its state data and the current time, and not write any field data out, such as `fields[]`, `isTimeSet`, `areFieldsSet`, and `isSet[]`. `nextStamp` also should not be part of the persistent state. Unfortunately, this didn't happen before JDK 1.1 shipped. To be compatible with JDK 1.1, we will always have to write out the field values and state flags. However, `nextStamp` can be removed from the serialization stream; this will probably happen in the near future.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### areFieldsSet

            boolean areFieldsSet

        True if `fields[]` are in sync with the currently set time. If false, then the next attempt to get the value of a field will force a recomputation of all fields from the current value of `time`.

      - ##### fields

            int[] fields

        The calendar field values for the currently set time for this calendar. This is an array of `FIELD_COUNT` integers, with index values `ERA` through `DST_OFFSET`.

      - ##### firstDayOfWeek

            int firstDayOfWeek

        The first day of the week, with possible values `SUNDAY`, `MONDAY`, etc. This is a locale-dependent value.

      - ##### isSet

            boolean[] isSet

        The flags which tell if a specified calendar field for the calendar is set. A new object has no fields set. After the first call to a method which generates the fields, they all remain set after that. This is an array of `FIELD_COUNT` booleans, with index values `ERA` through `DST_OFFSET`.

      - ##### isTimeSet

            boolean isTimeSet

        True if then the value of `time` is valid. The time is made invalid by a change to an item of `field[]`.
        See Also:
          - `Calendar.time`

      - ##### lenient

            boolean lenient

        `True` if this calendar allows out-of-range field values during computation of `time` from `fields[]`.
        See Also:
          - `Calendar.setLenient(boolean)`
          - `Calendar.isLenient()`

      - ##### minimalDaysInFirstWeek

            int minimalDaysInFirstWeek

        The number of days required for the first week in a month or year, with possible values from 1 to 7. This is a locale-dependent value.

      - ##### nextStamp

            int nextStamp

        The next available value for `stamp[]`, an internal array. This actually should not be written out to the stream, and will probably be removed from the stream in the near future. In the meantime, a value of `MINIMUM_USER_STAMP` should be used.

      - ##### serialVersionOnStream

            int serialVersionOnStream

        The version of the serialized data on the stream. Possible values:
        0 or not present on stream
          JDK 1.1.5 or earlier.
        1
          JDK 1.1.6 or later. Writes a correct 'time' value as well as compatible values for other fields. This is a transitional format.
        When streaming out this class, the most recent format and the highest allowable `serialVersionOnStream` is written.
        Since:
          1.1.6

      - ##### time

            long time

        The currently set time for this calendar, expressed in milliseconds after January 1, 1970, 0:00:00 GMT.
        See Also:
          - `Calendar.isTimeSet`

      - ##### zone

            TimeZone zone

        The `TimeZone` used by this calendar. `Calendar` uses the time zone data to translate between locale and GMT time.

  - ### Class java.util.Collections.AsLIFOQueue

    class AsLIFOQueue extends AbstractQueue<E> implements Serializable
    serialVersionUID:
      1802017725587941708L

    - #### Serialized Fields

      - ##### q

            Deque<E> q

  - ### Class java.util.Collections.CheckedCollection

    class CheckedCollection extends Object implements Serializable
    serialVersionUID:
      1578914078182001775L

    - #### Serialized Fields

      - ##### c

            Collection<E> c

      - ##### type

            Class<E> type

      - ##### zeroLengthElementArray

            E[] zeroLengthElementArray

  - ### Class java.util.Collections.CheckedList

    class CheckedList extends java.util.Collections.CheckedCollection<E> implements Serializable
    serialVersionUID:
      65247728283967356L

    - #### Serialized Fields

      - ##### list

            List<E> list

  - ### Class java.util.Collections.CheckedMap

    class CheckedMap extends Object implements Serializable
    serialVersionUID:
      5742860141034234728L

    - #### Serialized Fields

      - ##### keyType

            Class<K> keyType

      - ##### m

            Map<K,V> m

      - ##### valueType

            Class<V> valueType

  - ### Class java.util.Collections.CheckedNavigableMap

    class CheckedNavigableMap extends java.util.Collections.CheckedSortedMap<K,V> implements Serializable
    serialVersionUID:
      -4852462692372534096L

    - #### Serialized Fields

      - ##### nm

            NavigableMap<K,V> nm

  - ### Class java.util.Collections.CheckedNavigableSet

    class CheckedNavigableSet extends java.util.Collections.CheckedSortedSet<E> implements Serializable
    serialVersionUID:
      -5429120189805438922L

    - #### Serialized Fields

      - ##### ns

            NavigableSet<E> ns

  - ### Class java.util.Collections.CheckedQueue

    class CheckedQueue extends java.util.Collections.CheckedCollection<E> implements Serializable
    serialVersionUID:
      1433151992604707767L

    - #### Serialized Fields

      - ##### queue

            Queue<E> queue

  - ### Class java.util.Collections.CheckedRandomAccessList

    class CheckedRandomAccessList extends java.util.Collections.CheckedList<E> implements Serializable
    serialVersionUID:
      1638200125423088369L

  - ### Class java.util.Collections.CheckedSet

    class CheckedSet extends java.util.Collections.CheckedCollection<E> implements Serializable
    serialVersionUID:
      4694047833775013803L

  - ### Class java.util.Collections.CheckedSortedMap

    class CheckedSortedMap extends java.util.Collections.CheckedMap<K,V> implements Serializable
    serialVersionUID:
      1599671320688067438L

    - #### Serialized Fields

      - ##### sm

            SortedMap<K,V> sm

  - ### Class java.util.Collections.CheckedSortedSet

    class CheckedSortedSet extends java.util.Collections.CheckedSet<E> implements Serializable
    serialVersionUID:
      1599911165492914959L

    - #### Serialized Fields

      - ##### ss

            SortedSet<E> ss

  - ### Class java.util.Collections.CopiesList

    class CopiesList extends AbstractList<E> implements Serializable
    serialVersionUID:
      2739099268398711800L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### element

            E element

      - ##### n

            int n

  - ### Class java.util.Collections.EmptyList

    class EmptyList extends AbstractList<E> implements Serializable
    serialVersionUID:
      8842843931221139166L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()

  - ### Class java.util.Collections.EmptyMap

    class EmptyMap extends AbstractMap<K,V> implements Serializable
    serialVersionUID:
      6428348081105594320L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()

  - ### Class java.util.Collections.EmptySet

    class EmptySet extends AbstractSet<E> implements Serializable
    serialVersionUID:
      1582296315990362920L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()

  - ### Class java.util.Collections.ReverseComparator

    class ReverseComparator extends Object implements Serializable
    serialVersionUID:
      7207038068494060240L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()

  - ### Class java.util.Collections.ReverseComparator2

    class ReverseComparator2 extends Object implements Serializable
    serialVersionUID:
      4374092139857L

    - #### Serialized Fields

      - ##### cmp

            Comparator<T> cmp

        The comparator specified in the static factory. This will never be null, as the static factory returns a ReverseComparator instance if its argument is null.

  - ### Class java.util.Collections.SetFromMap

    class SetFromMap extends AbstractSet<E> implements Serializable
    serialVersionUID:
      2454657854757543876L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### m

            Map<E,Boolean> m

  - ### Class java.util.Collections.SingletonList

    class SingletonList extends AbstractList<E> implements Serializable
    serialVersionUID:
      3093736618740652951L

    - #### Serialized Fields

      - ##### element

            E element

  - ### Class java.util.Collections.SingletonMap

    class SingletonMap extends AbstractMap<K,V> implements Serializable
    serialVersionUID:
      -6979724477215052911L

    - #### Serialized Fields

      - ##### k

            K k

      - ##### v

            V v

  - ### Class java.util.Collections.SingletonSet

    class SingletonSet extends AbstractSet<E> implements Serializable
    serialVersionUID:
      3193687207550431679L

    - #### Serialized Fields

      - ##### element

            E element

  - ### Class java.util.Collections.SynchronizedCollection

    class SynchronizedCollection extends Object implements Serializable
    serialVersionUID:
      3053995032091335093L

    - #### Serialization Methods

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### c

            Collection<E> c

      - ##### mutex

            Object mutex

  - ### Class java.util.Collections.SynchronizedList

    class SynchronizedList extends java.util.Collections.SynchronizedCollection<E> implements Serializable
    serialVersionUID:
      -7754090372962971524L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        SynchronizedRandomAccessList instances are serialized as SynchronizedList instances to allow them to be deserialized in pre-1.4 JREs (which do not have SynchronizedRandomAccessList). This method inverts the transformation. As a beneficial side-effect, it also grafts the RandomAccess marker onto SynchronizedList instances that were serialized in pre-1.4 JREs. Note: Unfortunately, SynchronizedRandomAccessList instances serialized in 1.4.1 and deserialized in 1.4 will become SynchronizedList instances, as this method was missing in 1.4.

    - #### Serialized Fields

      - ##### list

            List<E> list

  - ### Class java.util.Collections.SynchronizedMap

    class SynchronizedMap extends Object implements Serializable
    serialVersionUID:
      1978198479659022715L

    - #### Serialization Methods

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### m

            Map<K,V> m

      - ##### mutex

            Object mutex

  - ### Class java.util.Collections.SynchronizedNavigableMap

    class SynchronizedNavigableMap extends java.util.Collections.SynchronizedSortedMap<K,V> implements Serializable
    serialVersionUID:
      699392247599746807L

    - #### Serialized Fields

      - ##### nm

            NavigableMap<K,V> nm

  - ### Class java.util.Collections.SynchronizedNavigableSet

    class SynchronizedNavigableSet extends java.util.Collections.SynchronizedSortedSet<E> implements Serializable
    serialVersionUID:
      -5505529816273629798L

    - #### Serialized Fields

      - ##### ns

            NavigableSet<E> ns

  - ### Class java.util.Collections.SynchronizedRandomAccessList

    class SynchronizedRandomAccessList extends java.util.Collections.SynchronizedList<E> implements Serializable
    serialVersionUID:
      1530674583602358482L

    - #### Serialization Methods

      - ##### writeReplace

        private Object writeReplace()
        Allows instances to be deserialized in pre-1.4 JREs (which do not have SynchronizedRandomAccessList). SynchronizedList has a readResolve method that inverts this transformation upon deserialization.

  - ### Class java.util.Collections.SynchronizedSet

    class SynchronizedSet extends java.util.Collections.SynchronizedCollection<E> implements Serializable
    serialVersionUID:
      487447009682186044L

  - ### Class java.util.Collections.SynchronizedSortedMap

    class SynchronizedSortedMap extends java.util.Collections.SynchronizedMap<K,V> implements Serializable
    serialVersionUID:
      -8798146769416483793L

    - #### Serialized Fields

      - ##### sm

            SortedMap<K,V> sm

  - ### Class java.util.Collections.SynchronizedSortedSet

    class SynchronizedSortedSet extends java.util.Collections.SynchronizedSet<E> implements Serializable
    serialVersionUID:
      8695801310862127406L

    - #### Serialized Fields

      - ##### ss

            SortedSet<E> ss

  - ### Class java.util.Collections.UnmodifiableCollection

    class UnmodifiableCollection extends Object implements Serializable
    serialVersionUID:
      1820017752578914078L

    - #### Serialized Fields

      - ##### c

            Collection<? extends E> c

  - ### Class java.util.Collections.UnmodifiableList

    class UnmodifiableList extends java.util.Collections.UnmodifiableCollection<E> implements Serializable
    serialVersionUID:
      -283967356065247728L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        UnmodifiableRandomAccessList instances are serialized as UnmodifiableList instances to allow them to be deserialized in pre-1.4 JREs (which do not have UnmodifiableRandomAccessList). This method inverts the transformation. As a beneficial side-effect, it also grafts the RandomAccess marker onto UnmodifiableList instances that were serialized in pre-1.4 JREs. Note: Unfortunately, UnmodifiableRandomAccessList instances serialized in 1.4.1 and deserialized in 1.4 will become UnmodifiableList instances, as this method was missing in 1.4.

    - #### Serialized Fields

      - ##### list

            List<? extends E> list

  - ### Class java.util.Collections.UnmodifiableMap

    class UnmodifiableMap extends Object implements Serializable
    serialVersionUID:
      -1034234728574286014L

    - #### Serialized Fields

      - ##### m

            Map<? extends K,? extends V> m

  - ### Class java.util.Collections.UnmodifiableMap.UnmodifiableEntrySet

    class UnmodifiableEntrySet extends java.util.Collections.UnmodifiableSet<Map.Entry<K,V>> implements Serializable
    serialVersionUID:
      7854390611657943733L

  - ### Class java.util.Collections.UnmodifiableNavigableMap

    class UnmodifiableNavigableMap extends java.util.Collections.UnmodifiableSortedMap<K,V> implements Serializable
    serialVersionUID:
      -4858195264774772197L

    - #### Serialized Fields

      - ##### nm

            NavigableMap<K,? extends V> nm

        The instance we wrap and protect.

  - ### Class java.util.Collections.UnmodifiableNavigableSet

    class UnmodifiableNavigableSet extends java.util.Collections.UnmodifiableSortedSet<E> implements Serializable
    serialVersionUID:
      -6027448201786391929L

    - #### Serialized Fields

      - ##### ns

            NavigableSet<E> ns

        The instance we are protecting.

  - ### Class java.util.Collections.UnmodifiableRandomAccessList

    class UnmodifiableRandomAccessList extends java.util.Collections.UnmodifiableList<E> implements Serializable
    serialVersionUID:
      -2542308836966382001L

    - #### Serialization Methods

      - ##### writeReplace

        private Object writeReplace()
        Allows instances to be deserialized in pre-1.4 JREs (which do not have UnmodifiableRandomAccessList). UnmodifiableList has a readResolve method that inverts this transformation upon deserialization.

  - ### Class java.util.Collections.UnmodifiableSet

    class UnmodifiableSet extends java.util.Collections.UnmodifiableCollection<E> implements Serializable
    serialVersionUID:
      -9215047833775013803L

  - ### Class java.util.Collections.UnmodifiableSortedMap

    class UnmodifiableSortedMap extends java.util.Collections.UnmodifiableMap<K,V> implements Serializable
    serialVersionUID:
      -8806743815996713206L

    - #### Serialized Fields

      - ##### sm

            SortedMap<K,? extends V> sm

  - ### Class java.util.Collections.UnmodifiableSortedSet

    class UnmodifiableSortedSet extends java.util.Collections.UnmodifiableSet<E> implements Serializable
    serialVersionUID:
      -4929149591599911165L

    - #### Serialized Fields

      - ##### ss

            SortedSet<E> ss

  - ### Class java.util.CollSer

    class CollSer extends Object implements Serializable
    serialVersionUID:
      6309168927139932177L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Reads objects from the stream and stores them in the transient `Object[] array` field.
        Serial Data:
          A nonnegative int, indicating the count of objects, followed by that many objects.
        Parameters:
          `ois` - the ObjectInputStream from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded
          `InvalidObjectException` - if the count is negative
        Since:
          9

      - ##### readResolve

        private Object readResolve() throws ObjectStreamException
        Creates and returns an immutable collection from this proxy class. The instance returned is created as if by calling one of the static factory methods for List, Map, or Set. This proxy class is the serial form for all immutable collection instances, regardless of implementation type. This is necessary to ensure that the existence of any particular implementation type is kept out of the serialized form.
        Throws:
          `InvalidObjectException` - if the tag value is illegal or if an exception is thrown during creation of the collection
          `ObjectStreamException` - if another serialization error has occurred
        Since:
          9

      - ##### writeObject

        private void writeObject(ObjectOutputStream oos) throws IOException
        Writes objects to the stream from the transient `Object[] array` field.
        Serial Data:
          A nonnegative int, indicating the count of objects, followed by that many objects.
        Parameters:
          `oos` - the ObjectOutputStream to which data is written
        Throws:
          `IOException` - if an I/O error occurs
        Since:
          9

    - #### Serialized Fields

      - ##### tag

            int tag

        Indicates the type of collection that is serialized. The low order 8 bits have the value 1 for an immutable `List`, 2 for an immutable `Set`, 3 for an immutable `Map`, and 4 for an immutable `List` that allows null elements. Any other value causes an `InvalidObjectException` to be thrown. The high order 24 bits are zero when an instance is serialized, and they are ignored when an instance is deserialized. They can thus be used by future implementations without causing compatibility issues.

        The tag value also determines the interpretation of the transient `Object[] array` field. For `List` and `Set`, the array's length is the size of the collection, and the array contains the elements of the collection. Null elements are not allowed. For `Set`, duplicate elements are not allowed.

        For `Map`, the array's length is twice the number of mappings present in the map. The array length is necessarily even. The array contains a succession of key and value pairs: `k1, v1, k2, v2, ..., kN, vN.` Nulls are not allowed, and duplicate keys are not allowed.

        Since:
          9

  - ### Exception Class java.util.ConcurrentModificationException

    class ConcurrentModificationException extends RuntimeException implements Serializable
    serialVersionUID:
      -3666751008965953603L

  - ### Class java.util.Currency

    class Currency extends Object implements Serializable
    serialVersionUID:
      -158308464356906721L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        Resolves instances being deserialized to a single instance per currency.

    - #### Serialized Fields

      - ##### currencyCode

            String currencyCode

        ISO 4217 currency code for this currency.

  - ### Class java.util.Date

    class Date extends Object implements Serializable
    serialVersionUID:
      7523967970034938905L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitute this object from a stream (i.e., deserialize it).
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Save the state of this object to a stream (i.e., serialize it).
        Serial Data:
          The value returned by `getTime()` is emitted (long). This represents the offset from January 1, 1970, 00:00:00 GMT in milliseconds.
        Throws:
          `IOException`

  - ### Exception Class java.util.DuplicateFormatFlagsException

    class DuplicateFormatFlagsException extends IllegalFormatException implements Serializable
    serialVersionUID:
      18890531L

    - #### Serialized Fields

      - ##### flags

            String flags

  - ### Exception Class java.util.EmptyStackException

    class EmptyStackException extends RuntimeException implements Serializable
    serialVersionUID:
      5084686378493302095L

  - ### Class java.util.EnumMap

    class EnumMap extends AbstractMap<K extends Enum<K>,V> implements Serializable
    serialVersionUID:
      458661240069192865L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitute the `EnumMap` instance from a stream (i.e., deserialize it).
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Save the state of the `EnumMap` instance to a stream (i.e., serialize it).
        Serial Data:
          The size of the enum map (the number of key-value mappings) is emitted (int), followed by the key (Object) and value (Object) for each key-value mapping represented by the enum map.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### keyType

            Class<K extends Enum<K>> keyType

        The `Class` object for the enum type of all the keys of this map.

  - ### Class java.util.EnumSet

    class EnumSet extends AbstractSet<E extends Enum<E>> implements Serializable
    serialVersionUID:
      1009687484059888093L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Throws `InvalidObjectException`.
        Parameters:
          `s` - the stream
        Throws:
          `InvalidObjectException` - always

      - ##### readObjectNoData

        private void readObjectNoData() throws InvalidObjectException
        Throws `InvalidObjectException`.
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        Object writeReplace()
        Returns a SerializationProxy representing the state of this instance.

  - ### Class java.util.EnumSet.SerializationProxy

    class SerializationProxy extends Object implements Serializable
    serialVersionUID:
      362491234563181265L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        Returns an `EnumSet` object with initial state held by this proxy.

    - #### Serialized Fields

      - ##### elements

            Enum<?>[] elements

        The elements contained in this enum set.

      - ##### elementType

            Class<E extends Enum<E>> elementType

        The element type of this enum set.

  - ### Class java.util.EventObject

    class EventObject extends Object implements Serializable
    serialVersionUID:
      5516075349620653480L

  - ### Exception Class java.util.FormatFlagsConversionMismatchException

    class FormatFlagsConversionMismatchException extends IllegalFormatException implements Serializable
    serialVersionUID:
      19120414L

    - #### Serialized Fields

      - ##### c

            char c

      - ##### f

            String f

  - ### Exception Class java.util.FormatterClosedException

    class FormatterClosedException extends IllegalStateException implements Serializable
    serialVersionUID:
      18111216L

  - ### Class java.util.GregorianCalendar

    class GregorianCalendar extends Calendar implements Serializable
    serialVersionUID:
      -8125100834729963327L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
        Updates internal state.
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### gregorianCutover

            long gregorianCutover

        The point at which the Gregorian calendar rules are used, measured in milliseconds from the standard epoch. Default is October 15, 1582 (Gregorian) 00:00:00 UTC or -12219292800000L. For this value, October 4, 1582 (Julian) is followed by October 15, 1582 (Gregorian). This corresponds to Julian day number 2299161.

  - ### Class java.util.HashMap

    class HashMap extends AbstractMap<K,V> implements Serializable
    serialVersionUID:
      362498820763181265L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this map from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this map to a stream (that is, serializes it).
        Serial Data:
          The capacity of the HashMap (the length of the bucket array) is emitted (int), followed by the size (an int, the number of key-value mappings), followed by the key (Object) and value (Object) for each key-value mapping. The key-value mappings are emitted in no particular order.
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### loadFactor

            float loadFactor

        The load factor for the hash table.

      - ##### threshold

            int threshold

        The next size value at which to resize (capacity * load factor).

  - ### Class java.util.HashSet

    class HashSet extends AbstractSet<E> implements Serializable
    serialVersionUID:
      -5024744406713321676L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitute the `HashSet` instance from a stream (that is, deserialize it).
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Save the state of this `HashSet` instance to a stream (that is, serialize it).
        Serial Data:
          The capacity of the backing `HashMap` instance (int), and its load factor (float) are emitted, followed by the size of the set (the number of elements it contains) (int), followed by all of its elements (each an Object) in no particular order.
        Throws:
          `IOException`

  - ### Class java.util.Hashtable

    class Hashtable extends Dictionary<K,V> implements Serializable
    serialVersionUID:
      1421746759512286392L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitute the Hashtable from a stream (i.e., deserialize it).
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Save the state of the Hashtable to a stream (i.e., serialize it).
        Serial Data:
          The capacity of the Hashtable (the length of the bucket array) is emitted (int), followed by the size of the Hashtable (the number of key-value mappings), followed by the key (Object) and value (Object) for each key-value mapping represented by the Hashtable The key-value mappings are emitted in no particular order.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### loadFactor

            float loadFactor

        The load factor for the hashtable.

      - ##### threshold

            int threshold

        The table is rehashed when its size exceeds this threshold. (The value of this field is (int)(capacity * loadFactor).)

  - ### Class java.util.IdentityHashMap

    class IdentityHashMap extends AbstractMap<K,V> implements Serializable
    serialVersionUID:
      8188218128353913216L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes the `IdentityHashMap` instance from a stream (i.e., deserializes it).
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves the state of the `IdentityHashMap` instance to a stream (i.e., serializes it).
        Serial Data:
          The size of the HashMap (the number of key-value mappings) (`int`), followed by the key (Object) and value (Object) for each key-value mapping represented by the IdentityHashMap. The key-value mappings are emitted in no particular order.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### size

            int size

        The number of key-value mappings contained in this identity hash map.

  - ### Exception Class java.util.IllegalFormatCodePointException

    class IllegalFormatCodePointException extends IllegalFormatException implements Serializable
    serialVersionUID:
      19080630L

    - #### Serialized Fields

      - ##### c

            int c

  - ### Exception Class java.util.IllegalFormatConversionException

    class IllegalFormatConversionException extends IllegalFormatException implements Serializable
    serialVersionUID:
      17000126L

    - #### Serialized Fields

      - ##### arg

            Class<?> arg

      - ##### c

            char c

  - ### Exception Class java.util.IllegalFormatException

    class IllegalFormatException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      18830826L

  - ### Exception Class java.util.IllegalFormatFlagsException

    class IllegalFormatFlagsException extends IllegalFormatException implements Serializable
    serialVersionUID:
      790824L

    - #### Serialized Fields

      - ##### flags

            String flags

  - ### Exception Class java.util.IllegalFormatPrecisionException

    class IllegalFormatPrecisionException extends IllegalFormatException implements Serializable
    serialVersionUID:
      18711008L

    - #### Serialized Fields

      - ##### p

            int p

  - ### Exception Class java.util.IllegalFormatWidthException

    class IllegalFormatWidthException extends IllegalFormatException implements Serializable
    serialVersionUID:
      16660902L

    - #### Serialized Fields

      - ##### w

            int w

  - ### Exception Class java.util.IllformedLocaleException

    class IllformedLocaleException extends RuntimeException implements Serializable
    serialVersionUID:
      -5245986824925681401L

    - #### Serialized Fields

      - ##### _errIdx

            int _errIdx

  - ### Exception Class java.util.InputMismatchException

    class InputMismatchException extends NoSuchElementException implements Serializable
    serialVersionUID:
      8811230760997066428L

  - ### Class java.util.LinkedHashMap

    class LinkedHashMap extends HashMap<K,V> implements Serializable
    serialVersionUID:
      3801124242820219131L

    - #### Serialized Fields

      - ##### accessOrder

            boolean accessOrder

        The iteration ordering method for this linked hash map: `true` for access-order, `false` for insertion-order.

  - ### Class java.util.LinkedHashSet

    class LinkedHashSet extends HashSet<E> implements Serializable
    serialVersionUID:
      -2851667679971038690L

  - ### Class java.util.LinkedList

    class LinkedList extends AbstractSequentialList<E> implements Serializable
    serialVersionUID:
      876323262645176354L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this `LinkedList` instance from a stream (that is, deserializes it).
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves the state of this `LinkedList` instance to a stream (that is, serializes it).
        Serial Data:
          The size of the list (the number of elements it contains) is emitted (int), followed by all of its elements (each an Object) in the proper order.
        Throws:
          `IOException`

  - ### Class java.util.Locale

    class Locale extends Object implements Serializable
    serialVersionUID:
      9149081749638150636L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes this `Locale`.
        Parameters:
          `in` - the `ObjectInputStream` to read
        Throws:
          `IOException`
          `ClassNotFoundException`
          `IllformedLocaleException`
        Since:
          1.7

      - ##### readResolve

        private Object readResolve() throws ObjectStreamException
        Returns a cached `Locale` instance equivalent to the deserialized `Locale`. When serialized language, country and variant fields read from the object data stream are exactly "ja", "JP", "JP" or "th", "TH", "TH" and script/extensions fields are empty, this method supplies `UNICODE_LOCALE_EXTENSION` "ca"/"japanese" (calendar type is "japanese") or "nu"/"thai" (number script type is "thai"). See Special Cases for more information.
        Throws:
          `ObjectStreamException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes this `Locale` to the specified `ObjectOutputStream`.
        Parameters:
          `out` - the `ObjectOutputStream` to write
        Throws:
          `IOException`
        Since:
          1.7

    - #### Serialized Fields

      - ##### country

            String country

        country subtag in upper case. (See `Locale.getCountry()`)

      - ##### extensions

            String extensions

        canonical representation of extensions, that is, BCP47 extensions in alphabetical order followed by BCP47 private use subtags, all in lower case letters separated by HYPHEN-MINUS characters. (See `Locale.getExtensionKeys()`, `Locale.getExtension(char)`)

      - ##### hashcode

            int hashcode

        deprecated, for forward compatibility only

      - ##### language

            String language

        language subtag in lower case. (See `Locale.getLanguage()`)

      - ##### script

            String script

        script subtag in title case (See `Locale.getScript()`)

      - ##### variant

            String variant

        variant subtags separated by LOWLINE characters. (See `Locale.getVariant()`)

  - ### Exception Class java.util.MissingFormatArgumentException

    class MissingFormatArgumentException extends IllegalFormatException implements Serializable
    serialVersionUID:
      19190115L

    - #### Serialized Fields

      - ##### s

            String s

  - ### Exception Class java.util.MissingFormatWidthException

    class MissingFormatWidthException extends IllegalFormatException implements Serializable
    serialVersionUID:
      15560123L

    - #### Serialized Fields

      - ##### s

            String s

  - ### Exception Class java.util.MissingResourceException

    class MissingResourceException extends RuntimeException implements Serializable
    serialVersionUID:
      -4876345176062000401L

    - #### Serialized Fields

      - ##### className

            String className

        The class name of the resource bundle requested by the user.

      - ##### key

            String key

        The name of the specific resource requested by the user.

  - ### Exception Class java.util.NoSuchElementException

    class NoSuchElementException extends RuntimeException implements Serializable
    serialVersionUID:
      6769829250639411880L

  - ### Class java.util.PriorityQueue

    class PriorityQueue extends AbstractQueue<E> implements Serializable
    serialVersionUID:
      -7720805057305804111L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes the `PriorityQueue` instance from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this queue to a stream (that is, serializes it).
        Serial Data:
          The length of the array backing the instance is emitted (int), followed by all of its elements (each an `Object`) in the proper order.
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### comparator

            Comparator<? super E> comparator

        The comparator, or null if priority queue uses elements' natural ordering.

      - ##### size

            int size

        The number of elements in the priority queue.

  - ### Class java.util.Properties

    class Properties extends Hashtable<Object,Object> implements Serializable
    serialVersionUID:
      4112578634029874840L

    - #### Serialized Fields

      - ##### defaults

            Properties defaults

        A property list that contains default values for any keys not found in this property list.

  - ### Class java.util.PropertyPermissionCollection

    class PropertyPermissionCollection extends PermissionCollection implements Serializable
    serialVersionUID:
      7015263904581634791L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serial Data:
          Default fields.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### all_allowed

            boolean all_allowed

        boolean saying if "*" is in the collection.

      - ##### permissions

            Hashtable permissions

        A table of the PropertyPermissions.

  - ### Class java.util.Random

    class Random extends Object implements Serializable
    serialVersionUID:
      3905348978240129619L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitute the `Random` instance from a stream (that is, deserialize it).
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Save the `Random` instance to a stream.
        Parameters:
          `s` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialization Overview

      - Serializable fields for Random.

    - #### Serialized Fields

      - ##### haveNextNextGaussian

            boolean haveNextNextGaussian

        nextNextGaussian is valid

      - ##### nextNextGaussian

            double nextNextGaussian

        next Gaussian to be returned

      - ##### seed

            long seed

        seed for random computations

  - ### Exception Class java.util.ServiceConfigurationError

    class ServiceConfigurationError extends Error implements Serializable
    serialVersionUID:
      74132770414881L

  - ### Class java.util.SimpleTimeZone

    class SimpleTimeZone extends TimeZone implements Serializable
    serialVersionUID:
      -403250971215465050L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
        Reconstitute this object from a stream (i.e., deserialize it). We handle both JDK 1.1 binary formats and full formats with a packed byte array.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream stream) throws IOException
        Save the state of this object to a stream (i.e., serialize it).
        Serial Data:
          We write out two formats, a JDK 1.1 compatible format, using `DOW_IN_MONTH_MODE` rules, in the required section, followed by the full rules, in packed format, in the optional section. The optional section will be ignored by JDK 1.1 code upon stream in.

          Contents of the optional section: The length of a byte array is emitted (int); this is 4 as of this release. The byte array of the given length is emitted. The contents of the byte array are the true values of the fields `startDay`, `startDayOfWeek`, `endDay`, and `endDayOfWeek`. The values of these fields in the required section are approximate values suited to the rule mode `DOW_IN_MONTH_MODE`, which is the only mode recognized by JDK 1.1.

        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### dstSavings

            int dstSavings

        A positive value indicating the amount of time saved during DST in milliseconds. Typically one hour (3600000); sometimes 30 minutes (1800000).

        If `useDaylight` is false, this value is ignored.

        Since:
          1.1.4

      - ##### endDay

            int endDay

        This field has two possible interpretations:
        `endMode == DOW_IN_MONTH`
          `endDay` indicates the day of the month of `endMonth` on which daylight saving time ends, from 1 to 28, 30, or 31, depending on the `endMonth`.
        `endMode != DOW_IN_MONTH`
          `endDay` indicates which `endDayOfWeek` in th month `endMonth` daylight saving time ends on. For example, a value of +1 and a `endDayOfWeek` of `Calendar.SUNDAY` indicates the first Sunday of `endMonth`. Likewise, +2 would indicate the second Sunday, and -1 the last Sunday. A value of 0 is illegal.

        If `useDaylight` is false, this value is ignored.

      - ##### endDayOfWeek

            int endDayOfWeek

        The day of the week on which daylight saving time ends. This value must be between `Calendar.SUNDAY` and `Calendar.SATURDAY` inclusive.

        If `useDaylight` is false or `endMode == DAY_OF_MONTH`, this value is ignored.

      - ##### endMode

            int endMode

        Variables specifying the mode of the end rule. Takes the following values:
        `DOM_MODE`
          Exact day of week; e.g., March 1.
        `DOW_IN_MONTH_MODE`
          Day of week in month; e.g., last Sunday in March.
        `DOW_GE_DOM_MODE`
          Day of week after day of month; e.g., Sunday on or after March 15.
        `DOW_LE_DOM_MODE`
          Day of week before day of month; e.g., Sunday on or before March 15.
        The setting of this field affects the interpretation of the `endDay` field.

        If `useDaylight` is false, this value is ignored.

        Since:
          1.1.4

      - ##### endMonth

            int endMonth

        The month in which daylight saving time ends. This value must be between `Calendar.JANUARY` and `Calendar.UNDECIMBER`. This value must not equal `startMonth`.

        If `useDaylight` is false, this value is ignored.

      - ##### endTime

            int endTime

        The time in milliseconds after midnight at which daylight saving time ends. This value is expressed as wall time, standard time, or UTC time, depending on the setting of `endTimeMode`.

        If `useDaylight` is false, this value is ignored.

      - ##### endTimeMode

            int endTimeMode

        The format of endTime, either `WALL_TIME`, `STANDARD_TIME`, or `UTC_TIME`.
        Since:
          1.3

      - ##### monthLength

            byte[] monthLength

        This field was serialized in JDK 1.1, so we have to keep it that way to maintain serialization compatibility. However, there's no need to recreate the array each time we create a new time zone.
        An array of bytes containing the values {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}. This is ignored as of the Java 2 platform v1.2, however, it must be streamed out for compatibility with JDK 1.1.

      - ##### rawOffset

            int rawOffset

        The offset in milliseconds between this zone and GMT. Negative offsets are to the west of Greenwich. To obtain local standard time, add the offset to GMT time. To obtain local wall time it may also be necessary to add `dstSavings`.

      - ##### serialVersionOnStream

            int serialVersionOnStream

        The version of the serialized data on the stream. Possible values:
        0 or not present on stream
          JDK 1.1.3 or earlier.
        1
          JDK 1.1.4 or later. Includes three new fields: `startMode`, `endMode`, and `dstSavings`.
        2
          JDK 1.3 or later. Includes two new fields: `startTimeMode` and `endTimeMode`.
        When streaming out this class, the most recent format and the highest allowable `serialVersionOnStream` is written.
        Since:
          1.1.4

      - ##### startDay

            int startDay

        This field has two possible interpretations:
        `startMode == DOW_IN_MONTH`
          `startDay` indicates the day of the month of `startMonth` on which daylight saving time starts, from 1 to 28, 30, or 31, depending on the `startMonth`.
        `startMode != DOW_IN_MONTH`
          `startDay` indicates which `startDayOfWeek` in the month `startMonth` daylight saving time starts on. For example, a value of +1 and a `startDayOfWeek` of `Calendar.SUNDAY` indicates the first Sunday of `startMonth`. Likewise, +2 would indicate the second Sunday, and -1 the last Sunday. A value of 0 is illegal.

        If `useDaylight` is false, this value is ignored.

      - ##### startDayOfWeek

            int startDayOfWeek

        The day of the week on which daylight saving time starts. This value must be between `Calendar.SUNDAY` and `Calendar.SATURDAY` inclusive.

        If `useDaylight` is false or `startMode == DAY_OF_MONTH`, this value is ignored.

      - ##### startMode

            int startMode

        Variables specifying the mode of the start rule. Takes the following values:
        `DOM_MODE`
          Exact day of week; e.g., March 1.
        `DOW_IN_MONTH_MODE`
          Day of week in month; e.g., last Sunday in March.
        `DOW_GE_DOM_MODE`
          Day of week after day of month; e.g., Sunday on or after March 15.
        `DOW_LE_DOM_MODE`
          Day of week before day of month; e.g., Sunday on or before March 15.
        The setting of this field affects the interpretation of the `startDay` field.

        If `useDaylight` is false, this value is ignored.

        Since:
          1.1.4

      - ##### startMonth

            int startMonth

        The month in which daylight saving time starts. This value must be between `Calendar.JANUARY` and `Calendar.DECEMBER` inclusive. This value must not equal `endMonth`.

        If `useDaylight` is false, this value is ignored.

      - ##### startTime

            int startTime

        The time in milliseconds after midnight at which daylight saving time starts. This value is expressed as wall time, standard time, or UTC time, depending on the setting of `startTimeMode`.

        If `useDaylight` is false, this value is ignored.

      - ##### startTimeMode

            int startTimeMode

        The format of startTime, either WALL_TIME, STANDARD_TIME, or UTC_TIME.
        Since:
          1.3

      - ##### startYear

            int startYear

        The year in which daylight saving time is first observed. This is an `AD` value. If this value is less than 1 then daylight saving time is observed for all `AD` years.

        If `useDaylight` is false, this value is ignored.

      - ##### useDaylight

            boolean useDaylight

        A boolean value which is true if and only if this zone uses daylight saving time. If this value is false, several other fields are ignored.

  - ### Class java.util.Stack

    class Stack extends Vector<E> implements Serializable
    serialVersionUID:
      1224463164541339165L

  - ### Class java.util.TimeZone

    class TimeZone extends Object implements Serializable
    serialVersionUID:
      3581463369166924961L

    - #### Serialized Fields

      - ##### ID

            String ID

        The string identifier of this `TimeZone`. This is a programmatic identifier used internally to look up `TimeZone` objects from the system table and also to map them to their localized display names. `ID` values are unique in the system table but may not be for dynamically created zones.

  - ### Exception Class java.util.TooManyListenersException

    class TooManyListenersException extends Exception implements Serializable
    serialVersionUID:
      5074640544770687831L

  - ### Class java.util.TreeMap

    class TreeMap extends AbstractMap<K,V> implements Serializable
    serialVersionUID:
      919286545866124006L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitute the `TreeMap` instance from a stream (i.e., deserialize it).
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Save the state of the `TreeMap` instance to a stream (i.e., serialize it).
        Serial Data:
          The size of the TreeMap (the number of key-value mappings) is emitted (int), followed by the key (Object) and value (Object) for each key-value mapping represented by the TreeMap. The key-value mappings are emitted in key-order (as determined by the TreeMap's Comparator, or by the keys' natural ordering if the TreeMap has no Comparator).
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### comparator

            Comparator<? super K> comparator

        The comparator used to maintain order in this tree map, or null if it uses the natural ordering of its keys.

  - ### Class java.util.TreeMap.AscendingSubMap

    class AscendingSubMap extends java.util.TreeMap.NavigableSubMap<K,V> implements Serializable
    serialVersionUID:
      912986545866124060L

  - ### Class java.util.TreeMap.DescendingSubMap

    class DescendingSubMap extends java.util.TreeMap.NavigableSubMap<K,V> implements Serializable
    serialVersionUID:
      912986545866120460L

    - #### Serialized Fields

      - ##### reverseComparator

            Comparator<? super K> reverseComparator

  - ### Class java.util.TreeMap.NavigableSubMap

    class NavigableSubMap extends AbstractMap<K,V> implements Serializable
    serialVersionUID:
      -2102997345730753016L

    - #### Serialized Fields

      - ##### fromStart

            boolean fromStart

      - ##### hi

            K hi

      - ##### hiInclusive

            boolean hiInclusive

      - ##### lo

            K lo

        Endpoints are represented as triples (fromStart, lo, loInclusive) and (toEnd, hi, hiInclusive). If fromStart is true, then the low (absolute) bound is the start of the backing map, and the other values are ignored. Otherwise, if loInclusive is true, lo is the inclusive bound, else lo is the exclusive bound. Similarly for the upper bound.

      - ##### loInclusive

            boolean loInclusive

      - ##### m

            TreeMap<K,V> m

        The backing map.

      - ##### toEnd

            boolean toEnd

  - ### Class java.util.TreeMap.SubMap

    class SubMap extends AbstractMap<K,V> implements Serializable
    serialVersionUID:
      -6520786458950516097L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()

    - #### Serialized Fields

      - ##### fromKey

            K fromKey

      - ##### fromStart

            boolean fromStart

      - ##### toEnd

            boolean toEnd

      - ##### toKey

            K toKey

  - ### Class java.util.TreeSet

    class TreeSet extends AbstractSet<E> implements Serializable
    serialVersionUID:
      -2479143000061671589L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitute the `TreeSet` instance from a stream (that is, deserialize it).
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Save the state of the `TreeSet` instance to a stream (that is, serialize it).
        Serial Data:
          Emits the comparator used to order this set, or `null` if it obeys its elements' natural ordering (Object), followed by the size of the set (the number of elements it contains) (int), followed by all of its elements (each an Object) in order (as determined by the set's Comparator, or by the elements' natural ordering if the set has no Comparator).
        Throws:
          `IOException`

  - ### Exception Class java.util.UnknownFormatConversionException

    class UnknownFormatConversionException extends IllegalFormatException implements Serializable
    serialVersionUID:
      19060418L

    - #### Serialized Fields

      - ##### s

            String s

  - ### Exception Class java.util.UnknownFormatFlagsException

    class UnknownFormatFlagsException extends IllegalFormatException implements Serializable
    serialVersionUID:
      19370506L

    - #### Serialized Fields

      - ##### flags

            String flags

  - ### Class java.util.UUID

    class UUID extends Object implements Serializable
    serialVersionUID:
      -4856846361193249489L

    - #### Serialized Fields

      - ##### leastSigBits

            long leastSigBits

      - ##### mostSigBits

            long mostSigBits

  - ### Class java.util.Vector

    class Vector extends AbstractList<E> implements Serializable
    serialVersionUID:
      -2767605614048989439L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Loads a `Vector` instance from a stream (that is, deserializes it). This method performs checks to ensure the consistency of the fields.
        Parameters:
          `in` - the stream
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if the stream contains data of a non-existing class

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves the state of the `Vector` instance to a stream (that is, serializes it). This method performs synchronization to ensure the consistency of the serialized data.
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### capacityIncrement

            int capacityIncrement

        The amount by which the capacity of the vector is automatically incremented when its size becomes greater than its capacity. If the capacity increment is less than or equal to zero, the capacity of the vector is doubled each time it needs to grow.

      - ##### elementCount

            int elementCount

        The number of valid components in this `Vector` object. Components `elementData[0]` through `elementData[elementCount-1]` are the actual items.

      - ##### elementData

            Object[] elementData

        The array buffer into which the components of the vector are stored. The capacity of the vector is the length of this array buffer, and is at least large enough to contain all the vector's elements.

        Any array elements following the last element in the Vector are null.

- ## Package java.util.concurrent

  - ### Class java.util.concurrent.ArrayBlockingQueue

    class ArrayBlockingQueue extends AbstractQueue<E> implements Serializable
    serialVersionUID:
      -817911632652898426L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this queue from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `InvalidObjectException` - if invariants are violated
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### count

            int count

        Number of elements in the queue

      - ##### items

            Object[] items

        The queued items

      - ##### lock

            ReentrantLock lock

        Main lock guarding all access

      - ##### notEmpty

            Condition notEmpty

        Condition for waiting takes

      - ##### notFull

            Condition notFull

        Condition for waiting puts

      - ##### putIndex

            int putIndex

        items index for next put, offer, or add

      - ##### takeIndex

            int takeIndex

        items index for next take, poll, peek or remove

  - ### Exception Class java.util.concurrent.BrokenBarrierException

    class BrokenBarrierException extends Exception implements Serializable
    serialVersionUID:
      7117394618823254244L

  - ### Exception Class java.util.concurrent.CancellationException

    class CancellationException extends IllegalStateException implements Serializable
    serialVersionUID:
      -9202173006928992231L

  - ### Exception Class java.util.concurrent.CompletionException

    class CompletionException extends RuntimeException implements Serializable
    serialVersionUID:
      7830266012832686185L

  - ### Class java.util.concurrent.ConcurrentHashMap

    class ConcurrentHashMap extends AbstractMap<K,V> implements Serializable
    serialVersionUID:
      7249069246763182397L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this map from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this map to a stream (that is, serializes it).
        Serial Data:
          the serialized fields, followed by the key (Object) and value (Object) for each key-value mapping, followed by a null pair. The key-value mappings are emitted in no particular order.
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialization Overview

      - Serialized pseudo-fields, provided only for jdk7 compatibility.

    - #### Serialized Fields

      - ##### segmentMask

            int segmentMask

        Mask value for indexing into segments. The upper bits of a key's hash code are used to choose the segment.

      - ##### segmentShift

            int segmentShift

        Shift value for indexing within segments.

      - ##### segments

            java.util.concurrent.ConcurrentHashMap.Segment[] segments

        The segments, each of which is a specialized hash table.

  - ### Class java.util.concurrent.ConcurrentHashMap.KeySetView

    class KeySetView extends java.util.concurrent.ConcurrentHashMap.CollectionView<K,V,K> implements Serializable
    serialVersionUID:
      7249069246763182397L

    - #### Serialized Fields

      - ##### value

            V value

  - ### Class java.util.concurrent.ConcurrentLinkedDeque

    class ConcurrentLinkedDeque extends AbstractCollection<E> implements Serializable
    serialVersionUID:
      876323262645176354L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this deque from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this deque to a stream (that is, serializes it).
        Serial Data:
          All of the elements (each an `E`) in the proper order, followed by a null
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

  - ### Class java.util.concurrent.ConcurrentLinkedQueue

    class ConcurrentLinkedQueue extends AbstractQueue<E> implements Serializable
    serialVersionUID:
      196745693267521676L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this queue from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this queue to a stream (that is, serializes it).
        Serial Data:
          All of the elements (each an `E`) in the proper order, followed by a null
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

  - ### Class java.util.concurrent.ConcurrentSkipListMap

    class ConcurrentSkipListMap extends AbstractMap<K,V> implements Serializable
    serialVersionUID:
      -8627078645895051609L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this map from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this map to a stream (that is, serializes it).
        Serial Data:
          The key (Object) and value (Object) for each key-value mapping represented by the map, followed by `null`. The key-value mappings are emitted in key-order (as determined by the Comparator, or by the keys' natural ordering if no Comparator).
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### comparator

            Comparator<? super K> comparator

        The comparator used to maintain order in this map, or null if using natural ordering. (Non-private to simplify access in nested classes.)

  - ### Class java.util.concurrent.ConcurrentSkipListMap.SubMap

    class SubMap extends AbstractMap<K,V> implements Serializable
    serialVersionUID:
      -7647078645895051609L

    - #### Serialized Fields

      - ##### hi

            K hi

        upper bound key, or null if to end

      - ##### hiInclusive

            boolean hiInclusive

        inclusion flag for hi

      - ##### isDescending

            boolean isDescending

        direction

      - ##### lo

            K lo

        lower bound key, or null if from start

      - ##### loInclusive

            boolean loInclusive

        inclusion flag for lo

      - ##### m

            ConcurrentSkipListMap<K,V> m

        Underlying map

  - ### Class java.util.concurrent.ConcurrentSkipListSet

    class ConcurrentSkipListSet extends AbstractSet<E> implements Serializable
    serialVersionUID:
      -2479143111061671589L

    - #### Serialized Fields

      - ##### m

            ConcurrentNavigableMap<E,Object> m

        The underlying map. Uses Boolean.TRUE as value for each element. This field is declared final for the sake of thread safety, which entails some ugliness in clone().

  - ### Class java.util.concurrent.CopyOnWriteArrayList

    class CopyOnWriteArrayList extends Object implements Serializable
    serialVersionUID:
      8673264195747942595L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this list from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this list to a stream (that is, serializes it).
        Serial Data:
          The length of the array backing the list is emitted (int), followed by all of its elements (each an Object) in the proper order.
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

  - ### Class java.util.concurrent.CopyOnWriteArraySet

    class CopyOnWriteArraySet extends AbstractSet<E> implements Serializable
    serialVersionUID:
      5457747651344034263L

    - #### Serialized Fields

      - ##### al

            CopyOnWriteArrayList<E> al

  - ### Class java.util.concurrent.CountedCompleter

    class CountedCompleter extends ForkJoinTask<T> implements Serializable
    serialVersionUID:
      5232453752276485070L

    - #### Serialized Fields

      - ##### completer

            CountedCompleter<?> completer

        This task's completer, or null if none

      - ##### pending

            int pending

        The number of pending tasks until completion

  - ### Exception Class java.util.concurrent.ExecutionException

    class ExecutionException extends Exception implements Serializable
    serialVersionUID:
      7830266012832686185L

  - ### Class java.util.concurrent.ForkJoinTask

    class ForkJoinTask extends Object implements Serializable
    serialVersionUID:
      -7721805057305804111L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this task from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this task to a stream (that is, serializes it).
        Serial Data:
          the current run status and the exception thrown during execution, or `null` if none
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### status

            int status

  - ### Class java.util.concurrent.LinkedBlockingDeque

    class LinkedBlockingDeque extends AbstractQueue<E> implements Serializable
    serialVersionUID:
      -387911632671998426L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this deque from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this deque to a stream (that is, serializes it).
        Serial Data:
          The capacity (int), followed by elements (each an `Object`) in the proper order, followed by a null
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### capacity

            int capacity

        Maximum number of items in the deque

      - ##### lock

            ReentrantLock lock

        Main lock guarding all access

      - ##### notEmpty

            Condition notEmpty

        Condition for waiting takes

      - ##### notFull

            Condition notFull

        Condition for waiting puts

  - ### Class java.util.concurrent.LinkedBlockingQueue

    class LinkedBlockingQueue extends AbstractQueue<E> implements Serializable
    serialVersionUID:
      -6903933977591709194L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this queue from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this queue to a stream (that is, serializes it).
        Serial Data:
          The capacity is emitted (int), followed by all of its elements (each an `Object`) in the proper order, followed by a null
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### capacity

            int capacity

        The capacity bound, or Integer.MAX_VALUE if none

      - ##### count

            AtomicInteger count

        Current number of elements

      - ##### notEmpty

            Condition notEmpty

        Wait queue for waiting takes

      - ##### notFull

            Condition notFull

        Wait queue for waiting puts

      - ##### putLock

            ReentrantLock putLock

        Lock held by put, offer, etc

      - ##### takeLock

            ReentrantLock takeLock

        Lock held by take, poll, etc

  - ### Class java.util.concurrent.LinkedTransferQueue

    class LinkedTransferQueue extends AbstractQueue<E> implements Serializable
    serialVersionUID:
      -3223113410248163686L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this queue from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this queue to a stream (that is, serializes it).
        Serial Data:
          All of the elements (each an `E`) in the proper order, followed by a null
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

  - ### Class java.util.concurrent.PriorityBlockingQueue

    class PriorityBlockingQueue extends AbstractQueue<E> implements Serializable
    serialVersionUID:
      5595510919245408276L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this queue from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this queue to a stream (that is, serializes it). For compatibility with previous version of this class, elements are first copied to a java.util.PriorityQueue, which is then serialized.
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### lock

            ReentrantLock lock

        Lock used for all public operations.

      - ##### notEmpty

            Condition notEmpty

        Condition for blocking when empty.

      - ##### q

            PriorityQueue<E> q

        A plain PriorityQueue used only for serialization, to maintain compatibility with previous versions of this class. Non-null only during serialization/deserialization.

  - ### Class java.util.concurrent.RecursiveAction

    class RecursiveAction extends ForkJoinTask<Void> implements Serializable
    serialVersionUID:
      5232453952276485070L

  - ### Class java.util.concurrent.RecursiveTask

    class RecursiveTask extends ForkJoinTask<V> implements Serializable
    serialVersionUID:
      5232453952276485270L

    - #### Serialized Fields

      - ##### result

            V result

        The result of the computation.

  - ### Exception Class java.util.concurrent.RejectedExecutionException

    class RejectedExecutionException extends RuntimeException implements Serializable
    serialVersionUID:
      -375805702767069545L

  - ### Class java.util.concurrent.Semaphore

    class Semaphore extends Object implements Serializable
    serialVersionUID:
      -3222578661600680210L

    - #### Serialized Fields

      - ##### sync

            java.util.concurrent.Semaphore.Sync sync

        All mechanics via AbstractQueuedSynchronizer subclass

  - ### Class java.util.concurrent.SynchronousQueue

    class SynchronousQueue extends AbstractQueue<E> implements Serializable
    serialVersionUID:
      -3223113410248163686L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes this queue from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves this queue to a stream (that is, serializes it).
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### qlock

            ReentrantLock qlock

      - ##### waitingConsumers

            java.util.concurrent.SynchronousQueue.WaitQueue waitingConsumers

      - ##### waitingProducers

            java.util.concurrent.SynchronousQueue.WaitQueue waitingProducers

  - ### Class java.util.concurrent.ThreadLocalRandom

    class ThreadLocalRandom extends Random implements Serializable
    serialVersionUID:
      -5851777807851030925L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        Returns the `current` thread's `ThreadLocalRandom`.

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Saves the `ThreadLocalRandom` to a stream (that is, serializes it).
        Parameters:
          `s` - the stream
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### initialized

            boolean initialized

        always true

      - ##### rnd

            long rnd

        seed for random computations

  - ### Exception Class java.util.concurrent.TimeoutException

    class TimeoutException extends Exception implements Serializable
    serialVersionUID:
      1900926677490660714L

- ## Package java.util.concurrent.atomic

  - ### Class java.util.concurrent.atomic.AtomicBoolean

    class AtomicBoolean extends Object implements Serializable
    serialVersionUID:
      4654671469794556979L

    - #### Serialized Fields

      - ##### value

            int value

  - ### Class java.util.concurrent.atomic.AtomicInteger

    class AtomicInteger extends Number implements Serializable
    serialVersionUID:
      6214790243416807050L

    - #### Serialized Fields

      - ##### value

            int value

  - ### Class java.util.concurrent.atomic.AtomicIntegerArray

    class AtomicIntegerArray extends Object implements Serializable
    serialVersionUID:
      2862133569453604235L

    - #### Serialized Fields

      - ##### array

            int[] array

  - ### Class java.util.concurrent.atomic.AtomicLong

    class AtomicLong extends Number implements Serializable
    serialVersionUID:
      1927816293512124184L

    - #### Serialized Fields

      - ##### value

            long value

  - ### Class java.util.concurrent.atomic.AtomicLongArray

    class AtomicLongArray extends Object implements Serializable
    serialVersionUID:
      -2308431214976778248L

    - #### Serialized Fields

      - ##### array

            long[] array

  - ### Class java.util.concurrent.atomic.AtomicReference

    class AtomicReference extends Object implements Serializable
    serialVersionUID:
      -1848883965231344442L

    - #### Serialized Fields

      - ##### value

            V value

  - ### Class java.util.concurrent.atomic.AtomicReferenceArray

    class AtomicReferenceArray extends Object implements Serializable
    serialVersionUID:
      -6209656149925076980L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reconstitutes the instance from a stream (that is, deserializes it).
        Parameters:
          `s` - the stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### array

            Object[] array

  - ### Class java.util.concurrent.atomic.DoubleAccumulator

    class DoubleAccumulator extends java.util.concurrent.atomic.Striped64 implements Serializable
    serialVersionUID:
      7249069246863182397L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Parameters:
          `s` - the stream
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Returns a SerializationProxy representing the state of this instance.

    - #### Serialized Fields

      - ##### function

            DoubleBinaryOperator function

      - ##### identity

            long identity

  - ### Class java.util.concurrent.atomic.DoubleAccumulator.SerializationProxy

    class SerializationProxy extends Object implements Serializable
    serialVersionUID:
      7249069246863182397L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        Returns a `DoubleAccumulator` object with initial state held by this proxy.

    - #### Serialized Fields

      - ##### function

            DoubleBinaryOperator function

        The function used for updates.

      - ##### identity

            long identity

        The identity value, represented as a long, as converted by `Double.doubleToRawLongBits(double)`. The original identity can be recovered using `Double.longBitsToDouble(long)`.

      - ##### value

            double value

        The current value returned by get().

  - ### Class java.util.concurrent.atomic.DoubleAdder

    class DoubleAdder extends java.util.concurrent.atomic.Striped64 implements Serializable
    serialVersionUID:
      7249069246863182397L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Parameters:
          `s` - the stream
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Returns a SerializationProxy representing the state of this instance.

  - ### Class java.util.concurrent.atomic.DoubleAdder.SerializationProxy

    class SerializationProxy extends Object implements Serializable
    serialVersionUID:
      7249069246863182397L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        Returns a `DoubleAdder` object with initial state held by this proxy.

    - #### Serialized Fields

      - ##### value

            double value

        The current value returned by sum().

  - ### Class java.util.concurrent.atomic.LongAccumulator

    class LongAccumulator extends java.util.concurrent.atomic.Striped64 implements Serializable
    serialVersionUID:
      7249069246863182397L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Parameters:
          `s` - the stream
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Returns a SerializationProxy representing the state of this instance.

    - #### Serialized Fields

      - ##### function

            LongBinaryOperator function

      - ##### identity

            long identity

  - ### Class java.util.concurrent.atomic.LongAccumulator.SerializationProxy

    class SerializationProxy extends Object implements Serializable
    serialVersionUID:
      7249069246863182397L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        Returns a `LongAccumulator` object with initial state held by this proxy.

    - #### Serialized Fields

      - ##### function

            LongBinaryOperator function

        The function used for updates.

      - ##### identity

            long identity

        The identity value.

      - ##### value

            long value

        The current value returned by get().

  - ### Class java.util.concurrent.atomic.LongAdder

    class LongAdder extends java.util.concurrent.atomic.Striped64 implements Serializable
    serialVersionUID:
      7249069246863182397L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws InvalidObjectException
        Parameters:
          `s` - the stream
        Throws:
          `InvalidObjectException` - always

      - ##### writeReplace

        private Object writeReplace()
        Returns a SerializationProxy representing the state of this instance.

  - ### Class java.util.concurrent.atomic.LongAdder.SerializationProxy

    class SerializationProxy extends Object implements Serializable
    serialVersionUID:
      7249069246863182397L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        Returns a `LongAdder` object with initial state held by this proxy.

    - #### Serialized Fields

      - ##### value

            long value

        The current value returned by sum().

- ## Package java.util.concurrent.locks

  - ### Class java.util.concurrent.locks.AbstractOwnableSynchronizer

    class AbstractOwnableSynchronizer extends Object implements Serializable
    serialVersionUID:
      3737899427754241961L

  - ### Class java.util.concurrent.locks.AbstractQueuedLongSynchronizer

    class AbstractQueuedLongSynchronizer extends AbstractOwnableSynchronizer implements Serializable
    serialVersionUID:
      7373984972572414692L

    - #### Serialized Fields

      - ##### state

            long state

        The synchronization state.

  - ### Class java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject

    class ConditionObject extends Object implements Serializable
    serialVersionUID:
      1173984872572414699L

  - ### Class java.util.concurrent.locks.AbstractQueuedSynchronizer

    class AbstractQueuedSynchronizer extends AbstractOwnableSynchronizer implements Serializable
    serialVersionUID:
      7373984972572414691L

    - #### Serialized Fields

      - ##### state

            int state

        The synchronization state.

  - ### Class java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject

    class ConditionObject extends Object implements Serializable
    serialVersionUID:
      1173984872572414699L

  - ### Class java.util.concurrent.locks.ReentrantLock

    class ReentrantLock extends Object implements Serializable
    serialVersionUID:
      7373984872572414699L

    - #### Serialized Fields

      - ##### sync

            java.util.concurrent.locks.ReentrantLock.Sync sync

        Synchronizer providing all implementation mechanics

  - ### Class java.util.concurrent.locks.ReentrantReadWriteLock

    class ReentrantReadWriteLock extends Object implements Serializable
    serialVersionUID:
      -6992448646407690164L

    - #### Serialized Fields

      - ##### readerLock

            ReentrantReadWriteLock.ReadLock readerLock

        Inner class providing readlock

      - ##### sync

            java.util.concurrent.locks.ReentrantReadWriteLock.Sync sync

        Performs all synchronization mechanics

      - ##### writerLock

            ReentrantReadWriteLock.WriteLock writerLock

        Inner class providing writelock

  - ### Class java.util.concurrent.locks.ReentrantReadWriteLock.ReadLock

    class ReadLock extends Object implements Serializable
    serialVersionUID:
      -5992448646407690164L

    - #### Serialized Fields

      - ##### sync

            java.util.concurrent.locks.ReentrantReadWriteLock.Sync sync

  - ### Class java.util.concurrent.locks.ReentrantReadWriteLock.WriteLock

    class WriteLock extends Object implements Serializable
    serialVersionUID:
      -4992448646407690164L

    - #### Serialized Fields

      - ##### sync

            java.util.concurrent.locks.ReentrantReadWriteLock.Sync sync

  - ### Class java.util.concurrent.locks.StampedLock

    class StampedLock extends Object implements Serializable
    serialVersionUID:
      -6001602636862214147L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

- ## Package java.util.jar

  - ### Exception Class java.util.jar.JarException

    class JarException extends ZipException implements Serializable
    serialVersionUID:
      7159778400963954473L

- ## Package java.util.logging

  - ### Class java.util.logging.Level

    class Level extends Object implements Serializable
    serialVersionUID:
      -8176160795706313070L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        Returns a `Level` instance with the same `name`, `value`, and `resourceBundleName` as the deserialized object.

    - #### Serialized Fields

      - ##### name

            String name

        The non-localized name of the level.

      - ##### resourceBundleName

            String resourceBundleName

        The resource bundle name to be used in localizing the level name.

      - ##### value

            int value

        The integer value of the level.

  - ### Class java.util.logging.LoggingPermission

    class LoggingPermission extends BasicPermission implements Serializable
    serialVersionUID:
      63564341580231582L

  - ### Class java.util.logging.LogRecord

    class LogRecord extends Object implements Serializable
    serialVersionUID:
      5372048053134512534L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Initializes the LogRecord from deserialized data.
        - If `longThreadID` is present in the serial form, its value takes precedence over `threadID` and a value for `threadID` is synthesized from it, such that for `longThreadID` values between `0` and `Integer.MAX_VALUE` inclusive, `longThreadID` and `threadID` will have the same value. For values outside of this range a negative synthesized value will be deterministically derived from `longThreadID`.
        - Otherwise, when only `threadID` is present, `longThreadID` is initialized with the value of `threadID` which may be anything between `Integer.MIN_VALUE` and {Integer.MAX_VALUE}.
        See `writeObject` for a description of the serial form.
        Parameters:
          `in` - the `ObjectInputStream` to read from
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found.
          `IOException` - if an I/O error occurs.

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serial Data:
          Serialized fields, followed by a two byte version number (major byte, followed by minor byte), followed by information on the log record parameter array. If there is no parameter array, then -1 is written. If there is a parameter array (possible of zero length) then the array length is written as an integer, followed by String values for each parameter. If a parameter is null, then a null String is written. Otherwise the output of Object.toString() is written.
        Parameters:
          `out` - the `ObjectOutputStream` to write to
        Throws:
          `IOException` - if I/O errors occur

    - #### Serialized Fields

      - ##### level

            Level level

        Logging message level

      - ##### loggerName

            String loggerName

        Name of the source Logger

      - ##### longThreadID

            long longThreadID

        Thread ID for thread that issued logging call

      - ##### message

            String message

        Non-localized raw message text

      - ##### millis

            long millis

        Truncated event time in milliseconds since 1970 - calculated as getInstant().toEpochMilli(). The event time instant can be reconstructed using `Instant.ofEpochSecond(millis/1000, (millis % 1000) * 1000_000 + nanoAdjustment)`

      - ##### nanoAdjustment

            int nanoAdjustment

        Nanoseconds adjustment to the millisecond of event time - calculated as getInstant().getNano() % 1000_000 The event time instant can be reconstructed using `Instant.ofEpochSecond(millis/1000, (millis % 1000) * 1000_000 + nanoAdjustment)`

        Since: 9

      - ##### resourceBundleName

            String resourceBundleName

        Resource bundle name to localized log message

      - ##### sequenceNumber

            long sequenceNumber

        Sequence number

      - ##### sourceClassName

            String sourceClassName

        Class that issued logging call

      - ##### sourceMethodName

            String sourceMethodName

        Method that issued logging call

      - ##### threadID

            int threadID

        this is deprecated and is available for backward compatibility. Values may have been synthesized. If present, `longThreadID` represents the actual thread id.

      - ##### thrown

            Throwable thrown

        The Throwable (if any) associated with log message

- ## Package java.util.prefs

  - ### Exception Class java.util.prefs.BackingStoreException

    class BackingStoreException extends Exception implements Serializable
    serialVersionUID:
      859796500401108469L

  - ### Exception Class java.util.prefs.InvalidPreferencesFormatException

    class InvalidPreferencesFormatException extends Exception implements Serializable
    serialVersionUID:
      -791715184232119669L

- ## Package java.util.regex

  - ### Class java.util.regex.Pattern

    class Pattern extends Object implements Serializable
    serialVersionUID:
      5073258162644648461L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Recompile the Pattern instance from a stream. The original pattern string is read in and the object tree is recompiled from it.
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### flags

            int flags

        The original pattern flags.

      - ##### pattern

            String pattern

        The original regular-expression pattern string.

  - ### Exception Class java.util.regex.PatternSyntaxException

    class PatternSyntaxException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      -3864639126226059218L

    - #### Serialized Fields

      - ##### desc

            String desc

      - ##### index

            int index

      - ##### pattern

            String pattern

- ## Package java.util.zip

  - ### Exception Class java.util.zip.DataFormatException

    class DataFormatException extends Exception implements Serializable
    serialVersionUID:
      2219632870893641452L

  - ### Exception Class java.util.zip.ZipError

    class ZipError extends InternalError implements Serializable
    serialVersionUID:
      853973422266861979L

  - ### Exception Class java.util.zip.ZipException

    class ZipException extends IOException implements Serializable
    serialVersionUID:
      8000196834066748623L

- ## Package javax.annotation.processing

  - ### Exception Class javax.annotation.processing.FilerException

    class FilerException extends IOException implements Serializable
    serialVersionUID:
      8426423106453163293L

- ## Package javax.crypto

  - ### Exception Class javax.crypto.AEADBadTagException

    class AEADBadTagException extends BadPaddingException implements Serializable
    serialVersionUID:
      -488059093241685509L

  - ### Exception Class javax.crypto.BadPaddingException

    class BadPaddingException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      -5315033893984728443L

  - ### Exception Class javax.crypto.ExemptionMechanismException

    class ExemptionMechanismException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      1572699429277957109L

  - ### Exception Class javax.crypto.IllegalBlockSizeException

    class IllegalBlockSizeException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      -1965144811953540392L

  - ### Exception Class javax.crypto.NoSuchPaddingException

    class NoSuchPaddingException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      -4572885201200175466L

  - ### Class javax.crypto.SealedObject

    class SealedObject extends Object implements Serializable
    serialVersionUID:
      4482838265551344752L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Restores the state of the `SealedObject` from a stream.
        Parameters:
          `s` - the object input stream.
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded
          `NullPointerException` - if s is `null`

    - #### Serialized Fields

      - ##### encodedParams

            byte[] encodedParams

        The cryptographic parameters used by the sealing `Cipher` object, encoded in the default format.

        That is, `Cipher.getParameters().getEncoded()`.

      - ##### encryptedContent

            byte[] encryptedContent

        The serialized object contents in encrypted format.

      - ##### paramsAlg

            String paramsAlg

        The algorithm of the parameters used.

      - ##### sealAlg

            String sealAlg

        The algorithm that was used to seal this object.

  - ### Exception Class javax.crypto.ShortBufferException

    class ShortBufferException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      8427718640832943747L

- ## Package javax.crypto.interfaces

- ## Package javax.crypto.spec

  - ### Class javax.crypto.spec.SecretKeySpec

    class SecretKeySpec extends Object implements Serializable
    serialVersionUID:
      6577238317307289933L

    - #### Serialized Fields

      - ##### algorithm

            String algorithm

        The name of the algorithm associated with this key.

      - ##### key

            byte[] key

        The secret key.

- ## Package javax.imageio

  - ### Exception Class javax.imageio.IIOException

    class IIOException extends IOException implements Serializable
    serialVersionUID:
      -3216210718638985251L

- ## Package javax.imageio.metadata

  - ### Exception Class javax.imageio.metadata.IIOInvalidTreeException

    class IIOInvalidTreeException extends IIOException implements Serializable
    serialVersionUID:
      -1314083172544132777L

    - #### Serialized Fields

      - ##### offendingNode

            Node offendingNode

        The `Node` that led to the parsing error, or `null`.

- ## Package javax.lang.model

  - ### Exception Class javax.lang.model.UnknownEntityException

    class UnknownEntityException extends RuntimeException implements Serializable
    serialVersionUID:
      269L

- ## Package javax.lang.model.element

  - ### Exception Class javax.lang.model.element.UnknownAnnotationValueException

    class UnknownAnnotationValueException extends UnknownEntityException implements Serializable
    serialVersionUID:
      269L

  - ### Exception Class javax.lang.model.element.UnknownDirectiveException

    class UnknownDirectiveException extends UnknownEntityException implements Serializable
    serialVersionUID:
      269L

  - ### Exception Class javax.lang.model.element.UnknownElementException

    class UnknownElementException extends UnknownEntityException implements Serializable
    serialVersionUID:
      269L

- ## Package javax.lang.model.type

  - ### Exception Class javax.lang.model.type.MirroredTypeException

    class MirroredTypeException extends MirroredTypesException implements Serializable
    serialVersionUID:
      269L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Explicitly set all transient fields.
        Parameters:
          `s` - the serial stream
        Throws:
          `ClassNotFoundException` - for a missing class during deserialization
          `IOException` - for an IO problem during deserialization

  - ### Exception Class javax.lang.model.type.MirroredTypesException

    class MirroredTypesException extends RuntimeException implements Serializable
    serialVersionUID:
      269L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Explicitly set all transient fields.
        Parameters:
          `s` - the serial stream
        Throws:
          `ClassNotFoundException` - for a missing class during deserialization
          `IOException` - for an IO problem during deserialization

  - ### Exception Class javax.lang.model.type.UnknownTypeException

    class UnknownTypeException extends UnknownEntityException implements Serializable
    serialVersionUID:
      269L

- ## Package javax.management

  - ### Class javax.management.AndQueryExp

    class AndQueryExp extends QueryEval implements Serializable
    serialVersionUID:
      -1081892073854801359L

    - #### Serialized Fields

      - ##### exp1

            QueryExp exp1

        The first QueryExp of the conjunction

      - ##### exp2

            QueryExp exp2

        The second QueryExp of the conjunction

  - ### Class javax.management.Attribute

    class Attribute extends Object implements Serializable
    serialVersionUID:
      2484220110589082382L

    - #### Serialized Fields

      - ##### name

            String name

        Attribute name.

      - ##### value

            Object value

        Attribute value

  - ### Class javax.management.AttributeChangeNotification

    class AttributeChangeNotification extends Notification implements Serializable
    serialVersionUID:
      535176054565814134L

    - #### Serialized Fields

      - ##### attributeName

            String attributeName

        The MBean attribute name.

      - ##### attributeType

            String attributeType

        The MBean attribute type.

      - ##### newValue

            Object newValue

        The MBean attribute new value.

      - ##### oldValue

            Object oldValue

        The MBean attribute old value.

  - ### Class javax.management.AttributeChangeNotificationFilter

    class AttributeChangeNotificationFilter extends Object implements Serializable
    serialVersionUID:
      -6347317584796410029L

    - #### Serialized Fields

      - ##### enabledAttributes

            Vector<String> enabledAttributes

        `Vector` that contains the enabled attribute names. The default value is an empty vector.

  - ### Class javax.management.AttributeList

    class AttributeList extends ArrayList<Object> implements Serializable
    serialVersionUID:
      -4077085769279709076L

  - ### Exception Class javax.management.AttributeNotFoundException

    class AttributeNotFoundException extends OperationsException implements Serializable
    serialVersionUID:
      6511584241791106926L

  - ### Class javax.management.AttributeValueExp

    class AttributeValueExp extends Object implements Serializable
    serialVersionUID:
      -7768025046539163385L

    - #### Serialized Fields

      - ##### attr

            String attr

        The name of the attribute

  - ### Exception Class javax.management.BadAttributeValueExpException

    class BadAttributeValueExpException extends Exception implements Serializable
    serialVersionUID:
      -3105272988410493376L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Restores the fields of a BadAttributeValueExpException from the stream. If the 'val' field in the stream does not contain a string it is replaced with an implementation specific string representation of the value in the stream.
        Parameters:
          `ois` - an ObjectInput Stream
        Throws:
          `IOException` - thrown if an error occurs
          `ClassNotFoundException` - if a class can not be found

    - #### Serialized Fields

      - ##### val

            String val

        A string representation of the attribute that originated this exception. For example, the string value can be the return of `attribute.toString()`.

  - ### Exception Class javax.management.BadBinaryOpValueExpException

    class BadBinaryOpValueExpException extends Exception implements Serializable
    serialVersionUID:
      5068475589449021227L

    - #### Serialized Fields

      - ##### exp

            ValueExp exp

        the `ValueExp` that originated this exception

  - ### Exception Class javax.management.BadStringOperationException

    class BadStringOperationException extends Exception implements Serializable
    serialVersionUID:
      7802201238441662100L

    - #### Serialized Fields

      - ##### op

            String op

        The description of the operation that originated this exception

  - ### Class javax.management.BetweenQueryExp

    class BetweenQueryExp extends QueryEval implements Serializable
    serialVersionUID:
      -2933597532866307444L

    - #### Serialized Fields

      - ##### exp1

            ValueExp exp1

        The checked value

      - ##### exp2

            ValueExp exp2

        The lower bound value

      - ##### exp3

            ValueExp exp3

        The upper bound value

  - ### Class javax.management.BinaryOpValueExp

    class BinaryOpValueExp extends QueryEval implements Serializable
    serialVersionUID:
      1216286847881456786L

    - #### Serialized Fields

      - ##### exp1

            ValueExp exp1

        The first value

      - ##### exp2

            ValueExp exp2

        The second value

      - ##### op

            int op

        The operator

  - ### Class javax.management.BinaryRelQueryExp

    class BinaryRelQueryExp extends QueryEval implements Serializable
    serialVersionUID:
      -5690656271650491000L

    - #### Serialized Fields

      - ##### exp1

            ValueExp exp1

        The first value

      - ##### exp2

            ValueExp exp2

        The second value

      - ##### relOp

            int relOp

        The operator

  - ### Class javax.management.BooleanValueExp

    class BooleanValueExp extends QueryEval implements Serializable
    serialVersionUID:
      7754922052666594581L

    - #### Serialized Fields

      - ##### val

            boolean val

        The boolean value

  - ### Class javax.management.ClassAttributeValueExp

    class ClassAttributeValueExp extends AttributeValueExp implements Serializable

    - #### Serialized Fields

      - ##### attr

            String attr

        The name of the attribute

        The serialVersionUID of this class is `-1081892073854801359L`.

  - ### Class javax.management.ImmutableDescriptor

    class ImmutableDescriptor extends Object implements Serializable
    serialVersionUID:
      8853308591080540165L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve() throws InvalidObjectException
        This method can replace a deserialized instance of this class with another instance. For example, it might replace a deserialized empty ImmutableDescriptor with `ImmutableDescriptor.EMPTY_DESCRIPTOR`.
        Throws:
          `InvalidObjectException` - if the read object has invalid fields.

    - #### Serialized Fields

      - ##### names

            String[] names

        The names of the fields in this ImmutableDescriptor with their original case. The names must be in alphabetical order as determined by `String.CASE_INSENSITIVE_ORDER`.

      - ##### values

            Object[] values

        The values of the fields in this ImmutableDescriptor. The elements in this array match the corresponding elements in the `names` array.

  - ### Class javax.management.InQueryExp

    class InQueryExp extends QueryEval implements Serializable
    serialVersionUID:
      -5801329450358952434L

    - #### Serialized Fields

      - ##### val

            ValueExp val

        The `ValueExp` to be found

      - ##### valueList

            ValueExp[] valueList

        The array of `ValueExp` to be searched

  - ### Exception Class javax.management.InstanceAlreadyExistsException

    class InstanceAlreadyExistsException extends OperationsException implements Serializable
    serialVersionUID:
      8893743928912733931L

  - ### Exception Class javax.management.InstanceNotFoundException

    class InstanceNotFoundException extends OperationsException implements Serializable
    serialVersionUID:
      -882579438394773049L

  - ### Class javax.management.InstanceOfQueryExp

    class InstanceOfQueryExp extends QueryEval implements Serializable
    serialVersionUID:
      -1081892073854801359L

    - #### Serialized Fields

      - ##### classNameValue

            StringValueExp classNameValue

        The `StringValueExp` returning the name of the class of which selected MBeans should be instances.

  - ### Exception Class javax.management.IntrospectionException

    class IntrospectionException extends OperationsException implements Serializable
    serialVersionUID:
      1054516935875481725L

  - ### Exception Class javax.management.InvalidApplicationException

    class InvalidApplicationException extends Exception implements Serializable
    serialVersionUID:
      -3048022274675537269L

    - #### Serialized Fields

      - ##### val

            Object val

        The object representing the class of the MBean

  - ### Exception Class javax.management.InvalidAttributeValueException

    class InvalidAttributeValueException extends OperationsException implements Serializable
    serialVersionUID:
      2164571879317142449L

  - ### Exception Class javax.management.JMException

    class JMException extends Exception implements Serializable
    serialVersionUID:
      350520924977331825L

  - ### Exception Class javax.management.JMRuntimeException

    class JMRuntimeException extends RuntimeException implements Serializable
    serialVersionUID:
      6573344628407841861L

  - ### Exception Class javax.management.ListenerNotFoundException

    class ListenerNotFoundException extends OperationsException implements Serializable
    serialVersionUID:
      -7242605822448519061L

  - ### Exception Class javax.management.MalformedObjectNameException

    class MalformedObjectNameException extends OperationsException implements Serializable
    serialVersionUID:
      -572689714442915824L

  - ### Class javax.management.MatchQueryExp

    class MatchQueryExp extends QueryEval implements Serializable
    serialVersionUID:
      -7156603696948215014L

    - #### Serialized Fields

      - ##### exp

            AttributeValueExp exp

        The attribute value to be matched

      - ##### pattern

            String pattern

        The pattern to be matched

  - ### Class javax.management.MBeanAttributeInfo

    class MBeanAttributeInfo extends MBeanFeatureInfo implements Serializable

    - #### Serialized Fields

      - ##### attributeType

            String attributeType

        The actual attribute type.

      - ##### is

            boolean is

        Indicates if this method is a "is"

      - ##### isRead

            boolean isRead

        The attribute read right.

      - ##### isWrite

            boolean isWrite

        The attribute write right.

  - ### Class javax.management.MBeanConstructorInfo

    class MBeanConstructorInfo extends MBeanFeatureInfo implements Serializable
    serialVersionUID:
      4433990064191844427L

    - #### Serialized Fields

      - ##### signature

            MBeanParameterInfo[] signature

        The signature of the method, that is, the class names of the arguments.

  - ### Exception Class javax.management.MBeanException

    class MBeanException extends JMException implements Serializable
    serialVersionUID:
      4066342430588744142L

    - #### Serialized Fields

      - ##### exception

            Exception exception

        Encapsulated `Exception`

  - ### Class javax.management.MBeanFeatureInfo

    class MBeanFeatureInfo extends Object implements Serializable
    serialVersionUID:
      3952882688968447265L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes an `MBeanFeatureInfo` from an `ObjectInputStream`.
        Serial Data:
          For compatibility reasons, an object of this class is deserialized as follows.

          The method `defaultReadObject()` is called first to deserialize the object except the field `descriptor`, which is not serialized in the default way. Then the method `read()` is called to read a byte, the field `descriptor` is deserialized according to the value of the byte value:

          - 1. The method `readObject()` is called twice to obtain the field names (a `String[]`) and the field values (an `Object[]`) of the `descriptor`. The two obtained values then are used to construct an `ImmutableDescriptor` instance for the field `descriptor`;
          - 0. The value for the field `descriptor` is obtained directly by calling the method `readObject()`. If the obtained value is null, the field `descriptor` is set to `EMPTY_DESCRIPTOR`;
          - -1. This means that there is no byte to read and that the object is from an earlier version of the JMX API. The field `descriptor` is set to `EMPTY_DESCRIPTOR`
          - Any other value. A `StreamCorruptedException` is thrown.
        Throws:
          `IOException`
          `ClassNotFoundException`
        Since:
          1.6

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes an `MBeanFeatureInfo` to an `ObjectOutputStream`.
        Serial Data:
          For compatibility reasons, an object of this class is serialized as follows.

          The method `defaultWriteObject()` is called first to serialize the object except the field `descriptor` which is declared as transient. The field `descriptor` is serialized as follows:

          - If `descriptor` is an instance of the class `ImmutableDescriptor`, the method `write(int val)` is called to write a byte with the value `1`, then the method `writeObject(Object obj)` is called twice to serialize the field names and the field values of the `descriptor`, respectively as a `String[]` and an `Object[]`;
          - Otherwise, the method `write(int val)` is called to write a byte with the value `0`, then the method `writeObject(Object obj)` is called to serialize directly the field `descriptor`.
        Throws:
          `IOException`
        Since:
          1.6

    - #### Serialized Fields

      - ##### description

            String description

        The human-readable description of the feature. It is recommended that subclasses call `MBeanFeatureInfo.getDescription()` rather than reading this field, and that they not change it.
        The human-readable description of the feature.

      - ##### name

            String name

        The name of the feature. It is recommended that subclasses call `MBeanFeatureInfo.getName()` rather than reading this field, and that they not change it.
        The name of the feature.

  - ### Class javax.management.MBeanInfo

    class MBeanInfo extends Object implements Serializable
    serialVersionUID:
      -6451021435135161911L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes an `MBeanInfo` from an `ObjectInputStream`.
        Serial Data:
          For compatibility reasons, an object of this class is deserialized as follows.

          The method `defaultReadObject()` is called first to deserialize the object except the field `descriptor`, which is not serialized in the default way. Then the method `read()` is called to read a byte, the field `descriptor` is deserialized according to the value of the byte value:

          - 1. The method `readObject()` is called twice to obtain the field names (a `String[]`) and the field values (an `Object[]`) of the `descriptor`. The two obtained values then are used to construct an `ImmutableDescriptor` instance for the field `descriptor`;
          - 0. The value for the field `descriptor` is obtained directly by calling the method `readObject()`. If the obtained value is null, the field `descriptor` is set to `EMPTY_DESCRIPTOR`;
          - -1. This means that there is no byte to read and that the object is from an earlier version of the JMX API. The field `descriptor` is set to `EMPTY_DESCRIPTOR`.
          - Any other value. A `StreamCorruptedException` is thrown.
        Throws:
          `IOException`
          `ClassNotFoundException`
        Since:
          1.6

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes an `MBeanInfo` to an `ObjectOutputStream`.
        Serial Data:
          For compatibility reasons, an object of this class is serialized as follows.

          The method `defaultWriteObject()` is called first to serialize the object except the field `descriptor` which is declared as transient. The field `descriptor` is serialized as follows:

          - If `descriptor` is an instance of the class `ImmutableDescriptor`, the method `write(int val)` is called to write a byte with the value `1`, then the method `writeObject(Object obj)` is called twice to serialize the field names and the field values of the `descriptor`, respectively as a `String[]` and an `Object[]`;
          - Otherwise, the method `write(int val)` is called to write a byte with the value `0`, then the method `writeObject(Object obj)` is called to serialize the field `descriptor` directly.
        Throws:
          `IOException`
        Since:
          1.6

    - #### Serialized Fields

      - ##### attributes

            MBeanAttributeInfo[] attributes

        The MBean attribute descriptors.

      - ##### className

            String className

        The MBean qualified name.

      - ##### constructors

            MBeanConstructorInfo[] constructors

        The MBean constructor descriptors.

      - ##### description

            String description

        The human readable description of the class.

      - ##### notifications

            MBeanNotificationInfo[] notifications

        The MBean notification descriptors.

      - ##### operations

            MBeanOperationInfo[] operations

        The MBean operation descriptors.

  - ### Class javax.management.MBeanNotificationInfo

    class MBeanNotificationInfo extends MBeanFeatureInfo implements Serializable
    serialVersionUID:
      -3888371564530107064L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### types

            String[] types

        The different types of the notification.

  - ### Class javax.management.MBeanOperationInfo

    class MBeanOperationInfo extends MBeanFeatureInfo implements Serializable
    serialVersionUID:
      -6178860474881375330L

    - #### Serialized Fields

      - ##### impact

            int impact

        The impact of the method, one of `INFO, ACTION, ACTION_INFO, UNKNOWN`.

      - ##### signature

            MBeanParameterInfo[] signature

        The signature of the method, that is, the class names of the arguments.

      - ##### type

            String type

        The method's return value.

  - ### Class javax.management.MBeanParameterInfo

    class MBeanParameterInfo extends MBeanFeatureInfo implements Serializable
    serialVersionUID:
      7432616882776782338L

    - #### Serialized Fields

      - ##### type

            String type

        The type or class name of the data.

  - ### Class javax.management.MBeanPermission

    class MBeanPermission extends Permission implements Serializable
    serialVersionUID:
      -2416928705275160661L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserialize this object based on its name and actions.
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### actions

            String actions

        The actions string.

  - ### Exception Class javax.management.MBeanRegistrationException

    class MBeanRegistrationException extends MBeanException implements Serializable
    serialVersionUID:
      4482382455277067805L

  - ### Class javax.management.MBeanServerNotification

    class MBeanServerNotification extends Notification implements Serializable
    serialVersionUID:
      2876477500475969677L

    - #### Serialized Fields

      - ##### objectName

            ObjectName objectName

        The object names of the MBeans concerned by this notification

  - ### Class javax.management.MBeanServerPermission

    class MBeanServerPermission extends BasicPermission implements Serializable
    serialVersionUID:
      -5661980843569388590L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

  - ### Class javax.management.MBeanServerPermissionCollection

    class MBeanServerPermissionCollection extends PermissionCollection implements Serializable
    serialVersionUID:
      -5661980843569388590L

    - #### Serialized Fields

      - ##### collectionPermission

            MBeanServerPermission collectionPermission

        Null if no permissions in collection, otherwise a single permission that is the union of all permissions that have been added.

  - ### Class javax.management.MBeanTrustPermission

    class MBeanTrustPermission extends BasicPermission implements Serializable
    serialVersionUID:
      -2952178077029018140L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

  - ### Exception Class javax.management.NotCompliantMBeanException

    class NotCompliantMBeanException extends OperationsException implements Serializable
    serialVersionUID:
      5175579583207963577L

  - ### Class javax.management.Notification

    class Notification extends EventObject implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `Notification` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `Notification` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### message

            String message

        The notification message.

      - ##### sequenceNumber

            long sequenceNumber

        The notification sequence number. A serial number which identify particular instance of notification in the context of the notification source.

      - ##### source

            Object source

        The object on which the notification initially occurred.

      - ##### timeStamp

            long timeStamp

        The notification timestamp. Indicating when the notification was generated

      - ##### type

            String type

        The notification type. A string expressed in a dot notation similar to Java properties. An example of a notification type is network.alarm.router

      - ##### userData

            Object userData

        The notification user data. Used for whatever other data the notification source wishes to communicate to its consumers

  - ### Class javax.management.NotificationFilterSupport

    class NotificationFilterSupport extends Object implements Serializable
    serialVersionUID:
      6579080007561786969L

    - #### Serialized Fields

      - ##### enabledTypes

            List<String> enabledTypes

        `Vector` that contains the enabled notification types. The default value is an empty vector.

  - ### Class javax.management.NotQueryExp

    class NotQueryExp extends QueryEval implements Serializable
    serialVersionUID:
      5269643775896723397L

    - #### Serialized Fields

      - ##### exp

            QueryExp exp

        The negated `QueryExp`

  - ### Class javax.management.NumericValueExp

    class NumericValueExp extends QueryEval implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `NumericValueExp` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `NumericValueExp` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### val

            Number val

        The numeric value

        The serialVersionUID of this class is `-4679739485102359104L`.

  - ### Class javax.management.ObjectInstance

    class ObjectInstance extends Object implements Serializable
    serialVersionUID:
      -4099952623687795850L

    - #### Serialized Fields

      - ##### className

            String className

        Class name.

      - ##### name

            ObjectName name

        Object name.

  - ### Class javax.management.ObjectName

    class ObjectName extends Object implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes an `ObjectName` from an `ObjectInputStream`.
        Serial Data:
          - In the current serial form (value of property `jmx.serial.form` differs from `1.0`): the string "<domain>:<properties><wild>", where:
            - <domain> represents the domain part of the `ObjectName`
            - <properties> represents the list of properties, as returned by `ObjectName.getKeyPropertyListString()`
            - <wild> is empty if not `isPropertyPattern`, or is the character "`*`" if `isPropertyPattern` and <properties> is empty, or is "`,*`" if `isPropertyPattern` and <properties> is not empty.
            The intent is that this string could be supplied to the `ObjectName(String)` constructor to produce an equivalent `ObjectName`.
          - In the old serial form (value of property `jmx.serial.form` is `1.0`): <domain> <propertyList> <propertyListString> <canonicalName> <pattern> <propertyPattern>, where:
            - <domain> represents the domain part of the `ObjectName`
            - <propertyList> is the `Hashtable` that contains all the pairs (key,value) for this `ObjectName`
            - <propertyListString> is the `String` representation of the list of properties in any order (not mandatorily a canonical representation)
            - <canonicalName> is the `String` containing this `ObjectName`'s canonical name
            - <pattern> is a boolean which is `true` if this `ObjectName` contains a pattern
            - <propertyPattern> is a boolean which is `true` if this `ObjectName` contains a pattern in the list of properties
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes an `ObjectName` to an `ObjectOutputStream`.
        Serial Data:
          - In the current serial form (value of property `jmx.serial.form` differs from `1.0`): the string "<domain>:<properties><wild>", where:
            - <domain> represents the domain part of the `ObjectName`
            - <properties> represents the list of properties, as returned by `ObjectName.getKeyPropertyListString()`
            - <wild> is empty if not `isPropertyPattern`, or is the character "`*`" if this `isPropertyPattern` and <properties> is empty, or is "`,*`" if `isPropertyPattern` and <properties> is not empty.
            The intent is that this string could be supplied to the `ObjectName(String)` constructor to produce an equivalent `ObjectName`.
          - In the old serial form (value of property `jmx.serial.form` is `1.0`): <domain> <propertyList> <propertyListString> <canonicalName> <pattern> <propertyPattern>, where:
            - <domain> represents the domain part of the `ObjectName`
            - <propertyList> is the `Hashtable` that contains all the pairs (key,value) for this `ObjectName`
            - <propertyListString> is the `String` representation of the list of properties in any order (not mandatorily a canonical representation)
            - <canonicalName> is the `String` containing this `ObjectName`'s canonical name
            - <pattern> is a boolean which is `true` if this `ObjectName` contains a pattern
            - <propertyPattern> is a boolean which is `true` if this `ObjectName` contains a pattern in the list of properties
        Throws:
          `IOException`

    - #### Serialized Fields

  - ### Exception Class javax.management.OperationsException

    class OperationsException extends JMException implements Serializable
    serialVersionUID:
      -4967597595580536216L

  - ### Class javax.management.OrQueryExp

    class OrQueryExp extends QueryEval implements Serializable
    serialVersionUID:
      2962973084421716523L

    - #### Serialized Fields

      - ##### exp1

            QueryExp exp1

        The left query expression

      - ##### exp2

            QueryExp exp2

        The right query expression

  - ### Class javax.management.QualifiedAttributeValueExp

    class QualifiedAttributeValueExp extends AttributeValueExp implements Serializable
    serialVersionUID:
      8832517277410933254L

    - #### Serialized Fields

      - ##### className

            String className

        The attribute class name

  - ### Class javax.management.QueryEval

    class QueryEval extends Object implements Serializable
    serialVersionUID:
      2675899265640874796L

  - ### Exception Class javax.management.ReflectionException

    class ReflectionException extends JMException implements Serializable
    serialVersionUID:
      9170809325636915553L

    - #### Serialized Fields

      - ##### exception

            Exception exception

        The wrapped `Exception`

  - ### Exception Class javax.management.RuntimeErrorException

    class RuntimeErrorException extends JMRuntimeException implements Serializable
    serialVersionUID:
      704338937753949796L

    - #### Serialized Fields

      - ##### error

            Error error

        The encapsulated `Error`

  - ### Exception Class javax.management.RuntimeMBeanException

    class RuntimeMBeanException extends JMRuntimeException implements Serializable
    serialVersionUID:
      5274912751982730171L

    - #### Serialized Fields

      - ##### runtimeException

            RuntimeException runtimeException

        The encapsulated `RuntimeException`

  - ### Exception Class javax.management.RuntimeOperationsException

    class RuntimeOperationsException extends JMRuntimeException implements Serializable
    serialVersionUID:
      -8408923047489133588L

    - #### Serialized Fields

      - ##### runtimeException

            RuntimeException runtimeException

        The encapsulated `RuntimeException`

  - ### Exception Class javax.management.ServiceNotFoundException

    class ServiceNotFoundException extends OperationsException implements Serializable
    serialVersionUID:
      -3990675661956646827L

  - ### Class javax.management.StringValueExp

    class StringValueExp extends Object implements Serializable
    serialVersionUID:
      -3256390509806284044L

    - #### Serialized Fields

      - ##### val

            String val

        The string literal

- ## Package javax.management.loading

  - ### Class javax.management.loading.MLet

    class MLet extends URLClassLoader implements Externalizable
    serialVersionUID:
      3636148327800330130L

    - #### Serialization Methods

      - ##### readExternal

        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException, UnsupportedOperationException
        Deprecated, for removal: This API element is subject to removal in a future version.

        Restore this MLet's contents from the given `ObjectInput`. Not all implementations support this method. Those that do not throw `UnsupportedOperationException`. A subclass may override this method to support it or to change the format of the read data.

        The format of the read data is not specified, but if an implementation supports `MLet.readExternal(java.io.ObjectInput)` it must also support `MLet.writeExternal(java.io.ObjectOutput)` in such a way that what is written by the latter can be read by the former.

        Parameters:
          `in` - The object input stream to read from.
        Throws:
          `IOException` - if a problem occurred while reading.
          `ClassNotFoundException` - if the class for the object being restored cannot be found.
          `UnsupportedOperationException` - if this implementation does not support this operation.

      - ##### writeExternal

        public void writeExternal(ObjectOutput out) throws IOException, UnsupportedOperationException
        Deprecated, for removal: This API element is subject to removal in a future version.

        Save this MLet's contents to the given `ObjectOutput`. Not all implementations support this method. Those that do not throw `UnsupportedOperationException`. A subclass may override this method to support it or to change the format of the written data.

        The format of the written data is not specified, but if an implementation supports `MLet.writeExternal(java.io.ObjectOutput)` it must also support `MLet.readExternal(java.io.ObjectInput)` in such a way that what is written by the former can be read by the latter.

        Parameters:
          `out` - The object output stream to write to.
        Throws:
          `IOException` - If a problem occurred while writing.
          `UnsupportedOperationException` - If this implementation does not support this operation.

  - ### Class javax.management.loading.PrivateMLet

    class PrivateMLet extends MLet implements Externalizable
    serialVersionUID:
      2503458973393711979L

    - #### Serialization Methods

      - ##### readExternal

        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException, UnsupportedOperationException
        Deprecated, for removal: This API element is subject to removal in a future version.

        Restore this MLet's contents from the given `ObjectInput`. Not all implementations support this method. Those that do not throw `UnsupportedOperationException`. A subclass may override this method to support it or to change the format of the read data.

        The format of the read data is not specified, but if an implementation supports `MLet.readExternal(java.io.ObjectInput)` it must also support `MLet.writeExternal(java.io.ObjectOutput)` in such a way that what is written by the latter can be read by the former.

        Parameters:
          `in` - The object input stream to read from.
        Throws:
          `IOException` - if a problem occurred while reading.
          `ClassNotFoundException` - if the class for the object being restored cannot be found.
          `UnsupportedOperationException` - if this implementation does not support this operation.

      - ##### writeExternal

        public void writeExternal(ObjectOutput out) throws IOException, UnsupportedOperationException
        Deprecated, for removal: This API element is subject to removal in a future version.

        Save this MLet's contents to the given `ObjectOutput`. Not all implementations support this method. Those that do not throw `UnsupportedOperationException`. A subclass may override this method to support it or to change the format of the written data.

        The format of the written data is not specified, but if an implementation supports `MLet.writeExternal(java.io.ObjectOutput)` it must also support `MLet.readExternal(java.io.ObjectInput)` in such a way that what is written by the former can be read by the latter.

        Parameters:
          `out` - The object output stream to write to.
        Throws:
          `IOException` - If a problem occurred while writing.
          `UnsupportedOperationException` - If this implementation does not support this operation.

- ## Package javax.management.modelmbean

  - ### Class javax.management.modelmbean.DescriptorSupport

    class DescriptorSupport extends Object implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `DescriptorSupport` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `DescriptorSupport` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### descriptor

            HashMap descriptor

        The collection of fields representing this descriptor

  - ### Exception Class javax.management.modelmbean.InvalidTargetObjectTypeException

    class InvalidTargetObjectTypeException extends Exception implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes an `InvalidTargetObjectTypeException` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes an `InvalidTargetObjectTypeException` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### exception

            Exception exception

        Encapsulated `Exception`

  - ### Class javax.management.modelmbean.ModelMBeanAttributeInfo

    class ModelMBeanAttributeInfo extends MBeanAttributeInfo implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `ModelMBeanAttributeInfo` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `ModelMBeanAttributeInfo` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### attrDescriptor

            Descriptor attrDescriptor

        The `Descriptor` containing the metadata corresponding to this attribute

  - ### Class javax.management.modelmbean.ModelMBeanConstructorInfo

    class ModelMBeanConstructorInfo extends MBeanConstructorInfo implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `ModelMBeanConstructorInfo` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `ModelMBeanConstructorInfo` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### consDescriptor

            Descriptor consDescriptor

        The `Descriptor` containing the metadata for this instance

  - ### Class javax.management.modelmbean.ModelMBeanInfoSupport

    class ModelMBeanInfoSupport extends MBeanInfo implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `ModelMBeanInfoSupport` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `ModelMBeanInfoSupport` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### modelMBeanAttributes

            ModelMBeanAttributeInfo[] modelMBeanAttributes

        The array of `ModelMBeanAttributeInfo` objects which have descriptors

      - ##### modelMBeanConstructors

            MBeanConstructorInfo[] modelMBeanConstructors

        The array of `ModelMBeanConstructorInfo` objects which have descriptors

      - ##### modelMBeanDescriptor

            Descriptor modelMBeanDescriptor

        The descriptor containing MBean wide policy

      - ##### modelMBeanNotifications

            MBeanNotificationInfo[] modelMBeanNotifications

        The array of `ModelMBeanNotificationInfo` objects which have descriptors

      - ##### modelMBeanOperations

            MBeanOperationInfo[] modelMBeanOperations

        The array of `ModelMBeanOperationInfo` objects which have descriptors

  - ### Class javax.management.modelmbean.ModelMBeanNotificationInfo

    class ModelMBeanNotificationInfo extends MBeanNotificationInfo implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `ModelMBeanNotificationInfo` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `ModelMBeanNotificationInfo` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### notificationDescriptor

            Descriptor notificationDescriptor

        The descriptor containing the appropriate metadata for this instance

  - ### Class javax.management.modelmbean.ModelMBeanOperationInfo

    class ModelMBeanOperationInfo extends MBeanOperationInfo implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `ModelMBeanOperationInfo` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `ModelMBeanOperationInfo` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### operationDescriptor

            Descriptor operationDescriptor

        The descriptor containing the appropriate metadata for this instance

  - ### Exception Class javax.management.modelmbean.XMLParseException

    class XMLParseException extends Exception implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes an `XMLParseException` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes an `XMLParseException` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

- ## Package javax.management.monitor

  - ### Class javax.management.monitor.MonitorNotification

    class MonitorNotification extends Notification implements Serializable
    serialVersionUID:
      -4608189663661929204L

    - #### Serialized Fields

      - ##### derivedGauge

            Object derivedGauge

        Monitor notification derived gauge.

      - ##### observedAttribute

            String observedAttribute

        Monitor notification observed attribute.

      - ##### observedObject

            ObjectName observedObject

        Monitor notification observed object.

      - ##### trigger

            Object trigger

        Monitor notification release mechanism. This value is used to keep the threshold/string (depending on the monitor type) that triggered off this notification.

  - ### Exception Class javax.management.monitor.MonitorSettingException

    class MonitorSettingException extends JMRuntimeException implements Serializable
    serialVersionUID:
      -8807913418190202007L

- ## Package javax.management.openmbean

  - ### Class javax.management.openmbean.ArrayType

    class ArrayType extends OpenType<T> implements Serializable
    serialVersionUID:
      720504429830309770L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve() throws ObjectStreamException
        Replace/resolve the object read from the stream before it is returned to the caller.
        Serial Data:
          The new serial form of this class defines a new serializable `boolean` field `primitiveArray`. In order to guarantee the interoperability with previous versions of this class the new serial form must continue to refer to primitive wrapper types even when the `ArrayType` instance describes a primitive type array. So when `primitiveArray` is `true` the `className`, `typeName` and `description` serializable fields are converted into primitive types before the deserialized `ArrayType` instance is return to the caller. The `elementType` field always returns the `SimpleType` corresponding to the primitive wrapper type of the array's primitive type.

          Therefore the following serializable fields are deserialized as follows:

          - if `primitiveArray` is `true` the `className` field is deserialized by replacing the array's component primitive wrapper type by the corresponding array's component primitive type, e.g. `"[[Ljava.lang.Integer;"` will be deserialized as `"[[I"`.
          - if `primitiveArray` is `true` the `typeName` field is deserialized by replacing the array's component primitive wrapper type by the corresponding array's component primitive type, e.g. `"[[Ljava.lang.Integer;"` will be deserialized as `"[[I"`.
          - if `primitiveArray` is `true` the `description` field is deserialized by replacing the array's component primitive wrapper type by the corresponding array's component primitive type, e.g. `"2-dimension array of java.lang.Integer"` will be deserialized as `"2-dimension array of int"`.
        Throws:
          `ObjectStreamException`
        Since:
          1.6

      - ##### writeReplace

        private Object writeReplace() throws ObjectStreamException
        Nominate a replacement for this object in the stream before the object is written.
        Serial Data:
          The new serial form of this class defines a new serializable `boolean` field `primitiveArray`. In order to guarantee the interoperability with previous versions of this class the new serial form must continue to refer to primitive wrapper types even when the `ArrayType` instance describes a primitive type array. So when `primitiveArray` is `true` the `className`, `typeName` and `description` serializable fields are converted into wrapper types before the serialized `ArrayType` instance is written to the stream. The `elementType` field always returns the `SimpleType` corresponding to the primitive wrapper type of the array's primitive type.

          Therefore the following serializable fields are serialized as follows:

          - if `primitiveArray` is `true` the `className` field is serialized by replacing the array's component primitive type by the corresponding array's component primitive wrapper type, e.g. `"[[I"` will be serialized as `"[[Ljava.lang.Integer;"`.
          - if `primitiveArray` is `true` the `typeName` field is serialized by replacing the array's component primitive type by the corresponding array's component primitive wrapper type, e.g. `"[[I"` will be serialized as `"[[Ljava.lang.Integer;"`.
          - if `primitiveArray` is `true` the `description` field is serialized by replacing the array's component primitive type by the corresponding array's component primitive wrapper type, e.g. `"2-dimension array of int"` will be serialized as `"2-dimension array of java.lang.Integer"`.
        Throws:
          `ObjectStreamException`
        Since:
          1.6

    - #### Serialized Fields

      - ##### dimension

            int dimension

        The dimension of arrays described by this `ArrayType` instance.

      - ##### elementType

            OpenType<?> elementType

        The open type of element values contained in the arrays described by this `ArrayType` instance.

      - ##### primitiveArray

            boolean primitiveArray

        This flag indicates whether this `ArrayType` describes a primitive array.
        Since:
          1.6

  - ### Class javax.management.openmbean.CompositeDataSupport

    class CompositeDataSupport extends Object implements Serializable
    serialVersionUID:
      8003518976613702244L

    - #### Serialized Fields

      - ##### compositeType

            CompositeType compositeType

        The composite type of this composite data instance.

      - ##### contents

            SortedMap<String,Object> contents

        Internal representation of the mapping of item names to their respective values. A `SortedMap` is used for faster retrieval of elements.

  - ### Class javax.management.openmbean.CompositeType

    class CompositeType extends OpenType<CompositeData> implements Serializable
    serialVersionUID:
      -5366242454346948798L

    - #### Serialized Fields

      - ##### nameToDescription

            TreeMap<String,String> nameToDescription

        Sorted mapping of the item names to their descriptions

      - ##### nameToType

            TreeMap<String,OpenType<?>> nameToType

        Sorted mapping of the item names to their open types

  - ### Exception Class javax.management.openmbean.InvalidKeyException

    class InvalidKeyException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      4224269443946322062L

  - ### Exception Class javax.management.openmbean.InvalidOpenTypeException

    class InvalidOpenTypeException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      -2837312755412327534L

  - ### Exception Class javax.management.openmbean.KeyAlreadyExistsException

    class KeyAlreadyExistsException extends IllegalArgumentException implements Serializable
    serialVersionUID:
      1845183636745282866L

  - ### Exception Class javax.management.openmbean.OpenDataException

    class OpenDataException extends JMException implements Serializable
    serialVersionUID:
      8346311255433349870L

  - ### Class javax.management.openmbean.OpenMBeanAttributeInfoSupport

    class OpenMBeanAttributeInfoSupport extends MBeanAttributeInfo implements Serializable
    serialVersionUID:
      -4867215622149721849L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        An object serialized in a version of the API before Descriptors were added to this class will have an empty or null Descriptor. For consistency with our behavior in this version, we must replace the object with one where the Descriptors reflect the same values of openType, defaultValue, etc.

    - #### Serialized Fields

      - ##### defaultValue

            Object defaultValue

        The open mbean attribute's default value

      - ##### legalValues

            Set<?> legalValues

        The open mbean attribute's legal values. This `Set` is unmodifiable

      - ##### maxValue

            Comparable<?> maxValue

        The open mbean attribute's max value

      - ##### minValue

            Comparable<?> minValue

        The open mbean attribute's min value

      - ##### openType

            OpenType<?> openType

        The open mbean attribute's open type

  - ### Class javax.management.openmbean.OpenMBeanConstructorInfoSupport

    class OpenMBeanConstructorInfoSupport extends MBeanConstructorInfo implements Serializable
    serialVersionUID:
      -4400441579007477003L

  - ### Class javax.management.openmbean.OpenMBeanInfoSupport

    class OpenMBeanInfoSupport extends MBeanInfo implements Serializable
    serialVersionUID:
      4349395935420511492L

  - ### Class javax.management.openmbean.OpenMBeanOperationInfoSupport

    class OpenMBeanOperationInfoSupport extends MBeanOperationInfo implements Serializable
    serialVersionUID:
      4996859732565369366L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        An object serialized in a version of the API before Descriptors were added to this class will have an empty or null Descriptor. For consistency with our behavior in this version, we must replace the object with one where the Descriptors reflect the same value of returned openType.

    - #### Serialized Fields

      - ##### returnOpenType

            OpenType<?> returnOpenType

        The open type of the values returned by the operation described by this `OpenMBeanOperationInfo` instance

  - ### Class javax.management.openmbean.OpenMBeanParameterInfoSupport

    class OpenMBeanParameterInfoSupport extends MBeanParameterInfo implements Serializable
    serialVersionUID:
      -7235016873758443122L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        An object serialized in a version of the API before Descriptors were added to this class will have an empty or null Descriptor. For consistency with our behavior in this version, we must replace the object with one where the Descriptors reflect the same values of openType, defaultValue, etc.

    - #### Serialized Fields

      - ##### defaultValue

            Object defaultValue

        The open mbean parameter's default value

      - ##### legalValues

            Set<?> legalValues

        The open mbean parameter's legal values. This `Set` is unmodifiable

      - ##### maxValue

            Comparable<?> maxValue

        The open mbean parameter's max value

      - ##### minValue

            Comparable<?> minValue

        The open mbean parameter's min value

      - ##### openType

            OpenType<?> openType

        The open mbean parameter's open type

  - ### Class javax.management.openmbean.OpenType

    class OpenType extends Object implements Serializable
    serialVersionUID:
      -9195195325186646468L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes an `OpenType` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### className

            String className

        The fully qualified Java class name of open data values this type describes.

      - ##### description

            String description

        The type description (should not be null or empty).

      - ##### typeName

            String typeName

        The name given to this type (should not be null or empty).

  - ### Class javax.management.openmbean.SimpleType

    class SimpleType extends OpenType<T> implements Serializable
    serialVersionUID:
      2215577471957694503L

    - #### Serialization Methods

      - ##### readResolve

        public Object readResolve() throws ObjectStreamException
        Replace an object read from an `ObjectInputStream` with the unique instance for that value.
        Throws:
          `ObjectStreamException` - if the read object cannot be resolved.

  - ### Class javax.management.openmbean.TabularDataSupport

    class TabularDataSupport extends Object implements Serializable
    serialVersionUID:
      5720150593236309827L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `TabularDataSupport` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### dataMap

            Map<Object,CompositeData> dataMap

        This tabular data instance's contents: a `HashMap`

      - ##### tabularType

            TabularType tabularType

        This tabular data instance's tabular type

  - ### Class javax.management.openmbean.TabularType

    class TabularType extends OpenType<TabularData> implements Serializable
    serialVersionUID:
      6554071860220659261L

    - #### Serialized Fields

      - ##### indexNames

            List<String> indexNames

        The items used to index each row element, kept in the order the user gave This is an unmodifiable `ArrayList`

      - ##### rowType

            CompositeType rowType

        The composite type of rows

- ## Package javax.management.relation

  - ### Exception Class javax.management.relation.InvalidRelationIdException

    class InvalidRelationIdException extends RelationException implements Serializable
    serialVersionUID:
      -7115040321202754171L

  - ### Exception Class javax.management.relation.InvalidRelationServiceException

    class InvalidRelationServiceException extends RelationException implements Serializable
    serialVersionUID:
      3400722103759507559L

  - ### Exception Class javax.management.relation.InvalidRelationTypeException

    class InvalidRelationTypeException extends RelationException implements Serializable
    serialVersionUID:
      3007446608299169961L

  - ### Exception Class javax.management.relation.InvalidRoleInfoException

    class InvalidRoleInfoException extends RelationException implements Serializable
    serialVersionUID:
      7517834705158932074L

  - ### Exception Class javax.management.relation.InvalidRoleValueException

    class InvalidRoleValueException extends RelationException implements Serializable
    serialVersionUID:
      -2066091747301983721L

  - ### Class javax.management.relation.MBeanServerNotificationFilter

    class MBeanServerNotificationFilter extends NotificationFilterSupport implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes an `MBeanServerNotificationFilter` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes an `MBeanServerNotificationFilter` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### deselectedNames

            List deselectedNames

        List of `ObjectName`s with no interest
        - `null` means that all `ObjectName`s are implicitly deselected (check for explicit selections))
        - Empty vector means that no `ObjectName` is explicitly deselected

      - ##### selectedNames

            List selectedNames

        List of `ObjectName`s of interest
        - `null` means that all `ObjectName`s are implicitly selected (check for explicit deselections)
        - Empty vector means that no `ObjectName` is explicitly selected

  - ### Exception Class javax.management.relation.RelationException

    class RelationException extends JMException implements Serializable
    serialVersionUID:
      5434016005679159613L

  - ### Exception Class javax.management.relation.RelationNotFoundException

    class RelationNotFoundException extends RelationException implements Serializable
    serialVersionUID:
      -3793951411158559116L

  - ### Class javax.management.relation.RelationNotification

    class RelationNotification extends Notification implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `RelationNotification` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `RelationNotification` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### newRoleValue

            List newRoleValue

        New role value (`ArrayList` of `ObjectName`s) (only for role update)

      - ##### oldRoleValue

            List oldRoleValue

        Old role value (`ArrayList` of `ObjectName`s) (only for role update)

      - ##### relationId

            String relationId

        Relation identifier of created/removed/updated relation

      - ##### relationObjName

            ObjectName relationObjName

        `ObjectName` of the relation MBean of created/removed/updated relation (only if the relation is represented by an MBean)

      - ##### relationTypeName

            String relationTypeName

        Relation type name of created/removed/updated relation

      - ##### roleName

            String roleName

        Name of updated role (only for role update)

      - ##### unregisterMBeanList

            List unregisterMBeanList

        List of `ObjectName`s of referenced MBeans to be unregistered due to relation removal

  - ### Exception Class javax.management.relation.RelationServiceNotRegisteredException

    class RelationServiceNotRegisteredException extends RelationException implements Serializable
    serialVersionUID:
      8454744887157122910L

  - ### Exception Class javax.management.relation.RelationTypeNotFoundException

    class RelationTypeNotFoundException extends RelationException implements Serializable
    serialVersionUID:
      1274155316284300752L

  - ### Class javax.management.relation.RelationTypeSupport

    class RelationTypeSupport extends Object implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `RelationTypeSupport` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `RelationTypeSupport` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### isInRelationService

            boolean isInRelationService

        Flag specifying whether the relation type has been declared in the Relation Service (so can no longer be updated)

      - ##### roleName2InfoMap

            Map roleName2InfoMap

        `Map` holding the mapping: <role name (`String`)> -> <role info (`RoleInfo` object)>

      - ##### typeName

            String typeName

        Relation type name

  - ### Class javax.management.relation.Role

    class Role extends Object implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `Role` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `Role` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### name

            String name

        Role name

      - ##### objectNameList

            List objectNameList

        `List` of `ObjectName`s of referenced MBeans

  - ### Class javax.management.relation.RoleInfo

    class RoleInfo extends Object implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `RoleInfo` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `RoleInfo` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### description

            String description

        Role description

      - ##### isReadable

            boolean isReadable

        Read access mode: `true` if role is readable

      - ##### isWritable

            boolean isWritable

        Write access mode: `true` if role is writable

      - ##### maxDegree

            int maxDegree

        Maximum degree (i.e. maximum number of referenced MBeans in corresponding role)

      - ##### minDegree

            int minDegree

        Minimum degree (i.e. minimum number of referenced MBeans in corresponding role)

      - ##### name

            String name

        Role name

      - ##### referencedMBeanClassName

            String referencedMBeanClassName

        Name of class of MBean(s) expected to be referenced in corresponding role

  - ### Exception Class javax.management.relation.RoleInfoNotFoundException

    class RoleInfoNotFoundException extends RelationException implements Serializable
    serialVersionUID:
      4394092234999959939L

  - ### Class javax.management.relation.RoleList

    class RoleList extends ArrayList<Object> implements Serializable
    serialVersionUID:
      5568344346499649313L

  - ### Exception Class javax.management.relation.RoleNotFoundException

    class RoleNotFoundException extends RelationException implements Serializable
    serialVersionUID:
      -2986406101364031481L

  - ### Class javax.management.relation.RoleResult

    class RoleResult extends Object implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `RoleResult` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `RoleResult` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### roleList

            RoleList roleList

        List of roles successfully accessed

      - ##### unresolvedRoleList

            RoleUnresolvedList unresolvedRoleList

        List of roles unsuccessfully accessed

  - ### Class javax.management.relation.RoleUnresolved

    class RoleUnresolved extends Object implements Serializable

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Deserializes a `RoleUnresolved` from an `ObjectInputStream`.
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Serializes a `RoleUnresolved` to an `ObjectOutputStream`.
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### problemType

            int problemType

        Problem type

      - ##### roleName

            String roleName

        Role name

      - ##### roleValue

            List roleValue

        Role value (`List` of `ObjectName` objects)

  - ### Class javax.management.relation.RoleUnresolvedList

    class RoleUnresolvedList extends ArrayList<Object> implements Serializable
    serialVersionUID:
      4054902803091433324L

- ## Package javax.management.remote

  - ### Class javax.management.remote.JMXConnectionNotification

    class JMXConnectionNotification extends Notification implements Serializable
    serialVersionUID:
      -2331308725952627538L

    - #### Serialized Fields

      - ##### connectionId

            String connectionId

        The connection ID to which this notification pertains.
        See Also:
          - `JMXConnectionNotification.getConnectionId()`

  - ### Class javax.management.remote.JMXPrincipal

    class JMXPrincipal extends Object implements Serializable
    serialVersionUID:
      -4184480100214577411L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### name

            String name

        The JMX Remote API name for the identity represented by this `JMXPrincipal` object.
        See Also:
          - `JMXPrincipal.getName()`

  - ### Exception Class javax.management.remote.JMXProviderException

    class JMXProviderException extends IOException implements Serializable
    serialVersionUID:
      -3166703627550447198L

    - #### Serialized Fields

      - ##### cause

            Throwable cause

        An exception that caused this exception to be thrown. This field may be null.
        See Also:
          - `Throwable.getCause()`

  - ### Exception Class javax.management.remote.JMXServerErrorException

    class JMXServerErrorException extends IOException implements Serializable
    serialVersionUID:
      3996732239558744666L

    - #### Serialized Fields

      - ##### cause

            Error cause

        An `Error` that caused this exception to be thrown.
        See Also:
          - `Throwable.getCause()`

  - ### Class javax.management.remote.JMXServiceURL

    class JMXServiceURL extends Object implements Serializable
    serialVersionUID:
      8173364409860779292L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream inputStream) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### host

            String host

        The value returned by `JMXServiceURL.getHost()`.

      - ##### port

            int port

        The value returned by `JMXServiceURL.getPort()`.

      - ##### protocol

            String protocol

        The value returned by `JMXServiceURL.getProtocol()`.

      - ##### urlPath

            String urlPath

        The value returned by `JMXServiceURL.getURLPath()`.

  - ### Class javax.management.remote.NotificationResult

    class NotificationResult extends Object implements Serializable
    serialVersionUID:
      1191800228721395279L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### earliestSequenceNumber

            long earliestSequenceNumber

      - ##### nextSequenceNumber

            long nextSequenceNumber

      - ##### targetedNotifications

            TargetedNotification[] targetedNotifications

  - ### Class javax.management.remote.SubjectDelegationPermission

    class SubjectDelegationPermission extends BasicPermission implements Serializable
    serialVersionUID:
      1481618113008682343L

  - ### Class javax.management.remote.TargetedNotification

    class TargetedNotification extends Object implements Serializable
    serialVersionUID:
      7676132089779300926L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### id

            Integer id

        The ID of the listener to which the notification is targeted.
        See Also:
          - `TargetedNotification.getListenerID()`

      - ##### notif

            Notification notif

        A notification to transmit to the other side.
        See Also:
          - `TargetedNotification.getNotification()`

- ## Package javax.management.remote.rmi

  - ### Class javax.management.remote.rmi.RMIConnectionImpl_Stub

    class RMIConnectionImpl_Stub extends RemoteStub implements Serializable
    serialVersionUID:
      2L

  - ### Class javax.management.remote.rmi.RMIConnector

    class RMIConnector extends Object implements Serializable
    serialVersionUID:
      817323035842634473L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Read RMIConnector fields from an `ObjectInputStream`. Calls `s.defaultReadObject()` and then initializes all transient variables that need initializing.
        Parameters:
          `s` - The ObjectInputStream to read from.
        Throws:
          `InvalidObjectException` - if none of rmiServer stub or jmxServiceURL are set.
          `IOException`
          `ClassNotFoundException`
        See Also:
          - `RMIConnector(JMXServiceURL,Map)`
          - `RMIConnector(RMIServer,Map)`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Writes the RMIConnector fields to an `ObjectOutputStream`.

        Connects the underlying RMIServer stub to an ORB, if needed, before serializing it. This is done using the environment map that was provided to the constructor, if any, and as documented in `javax.management.remote.rmi`.

        This method then calls `s.defaultWriteObject()`. Usually, rmiServer is null if this object was constructed with a JMXServiceURL, and jmxServiceURL is null if this object is constructed with a RMIServer stub.

        Note that the environment Map is not serialized, since the objects it contains are assumed to be contextual and relevant only with respect to the local environment (class loader, ORB, etc...).

        After an RMIConnector is deserialized, it is assumed that the user will call `RMIConnector.connect(Map)`, providing a new Map that can contain values which are contextually relevant to the new local environment.

        Since connection to the ORB is needed prior to serializing, and since the ORB to connect to is one of those contextual parameters, it is not recommended to re-serialize a just de-serialized object - as the de-serialized object has no map. Thus, when an RMIConnector object is needed for serialization or transmission to a remote application, it is recommended to obtain a new RMIConnector stub by calling `RMIConnectorServer.toJMXConnector(Map)`.

        Parameters:
          `s` - The ObjectOutputStream to write to.
        Throws:
          `InvalidObjectException` - if none of rmiServer stub or jmxServiceURL are set.
          `IOException`
        See Also:
          - `RMIConnector(JMXServiceURL,Map)`
          - `RMIConnector(RMIServer,Map)`

    - #### Serialized Fields

      - ##### jmxServiceURL

            JMXServiceURL jmxServiceURL

        The JMXServiceURL of the RMI JMX Connector server to which this client connector will be connected. This field can be null when rmiServer is not null. If both rmiServer and jmxServiceURL are null then serialization will fail.
        See Also:
          - `RMIConnector(JMXServiceURL,Map)`

      - ##### rmiServer

            RMIServer rmiServer

        The RMIServer stub of the RMI JMX Connector server to which this client connector is (or will be) connected. This field can be null when jmxServiceURL is not null. This includes the case where jmxServiceURL contains a serialized RMIServer stub. If both rmiServer and jmxServiceURL are null then serialization will fail.
        See Also:
          - `RMIConnector(RMIServer,Map)`

  - ### Class javax.management.remote.rmi.RMIServerImpl_Stub

    class RMIServerImpl_Stub extends RemoteStub implements Serializable
    serialVersionUID:
      2L

- ## Package javax.management.timer

  - ### Class javax.management.timer.TimerNotification

    class TimerNotification extends Notification implements Serializable
    serialVersionUID:
      1798492029603825750L

    - #### Serialized Fields

      - ##### notificationID

            Integer notificationID

        Timer notification identifier. This identifier is used to retrieve a timer notification from the timer list of notifications.

- ## Package javax.naming

  - ### Exception Class javax.naming.AuthenticationException

    class AuthenticationException extends NamingSecurityException implements Serializable
    serialVersionUID:
      3678497619904568096L

  - ### Exception Class javax.naming.AuthenticationNotSupportedException

    class AuthenticationNotSupportedException extends NamingSecurityException implements Serializable
    serialVersionUID:
      -7149033933259492300L

  - ### Class javax.naming.BinaryRefAddr

    class BinaryRefAddr extends RefAddr implements Serializable
    serialVersionUID:
      -3415254970957330361L

    - #### Serialized Fields

      - ##### buf

            byte[] buf

        Contains the bytes of the address. This field is initialized by the constructor and returned using getAddressBytes() and getAddressContents().

  - ### Class javax.naming.Binding

    class Binding extends NameClassPair implements Serializable
    serialVersionUID:
      8839217842691845890L

    - #### Serialized Fields

      - ##### boundObj

            Object boundObj

        Contains this binding's object. It is initialized by the constructor and can be updated using `setObject`.
        See Also:
          - `Binding.getObject()`
          - `Binding.setObject(java.lang.Object)`

  - ### Exception Class javax.naming.CannotProceedException

    class CannotProceedException extends NamingException implements Serializable
    serialVersionUID:
      1219724816191576813L

    - #### Serialized Fields

      - ##### altName

            Name altName

        Contains the name of the resolved object, relative to the context `altNameCtx`. It is a composite name. If null, then no name is specified. See the `javax.naming.spi.ObjectFactory.getObjectInstance` method for details on how this is used.

        This field is initialized to null. It should not be manipulated directly: it should be accessed and updated using getAltName() and setAltName().

        See Also:
          - `CannotProceedException.getAltName()`
          - `CannotProceedException.setAltName(javax.naming.Name)`
          - `CannotProceedException.altNameCtx`
          - `ObjectFactory.getObjectInstance(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable<?, ?>)`

      - ##### altNameCtx

            Context altNameCtx

        Contains the context relative to which `altName` is specified. If null, then the default initial context is implied. See the `javax.naming.spi.ObjectFactory.getObjectInstance` method for details on how this is used.

        This field is initialized to null. It should not be manipulated directly: it should be accessed and updated using getAltNameCtx() and setAltNameCtx().

        See Also:
          - `CannotProceedException.getAltNameCtx()`
          - `CannotProceedException.setAltNameCtx(javax.naming.Context)`
          - `CannotProceedException.altName`
          - `ObjectFactory.getObjectInstance(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable<?, ?>)`

      - ##### environment

            Hashtable<?,?> environment

        Contains the environment relevant for the Context or DirContext method that cannot proceed.

        This field is initialized to null. It should not be manipulated directly: it should be accessed and updated using getEnvironment() and setEnvironment().

        See Also:
          - `CannotProceedException.getEnvironment()`
          - `CannotProceedException.setEnvironment(java.util.Hashtable<?, ?>)`

      - ##### remainingNewName

            Name remainingNewName

        Contains the remaining unresolved part of the second "name" argument to Context.rename(). This information is necessary for continuing the Context.rename() operation.

        This field is initialized to null. It should not be manipulated directly: it should be accessed and updated using getRemainingName() and setRemainingName().

        See Also:
          - `CannotProceedException.getRemainingNewName()`
          - `CannotProceedException.setRemainingNewName(javax.naming.Name)`

  - ### Exception Class javax.naming.CommunicationException

    class CommunicationException extends NamingException implements Serializable
    serialVersionUID:
      3618507780299986611L

  - ### Class javax.naming.CompositeName

    class CompositeName extends Object implements Serializable
    serialVersionUID:
      1667768148915813118L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        The readObject method is called to restore the state of the `CompositeName` from a stream. See `writeObject` for a description of the serial form.
        Parameters:
          `s` - the `ObjectInputStream` to read from
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if the class of a serialized object could not be found

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        The writeObject method is called to save the state of the `CompositeName` to a stream.
        Serial Data:
          The number of components (an `int`) followed by the individual components (each a `String`).
        Parameters:
          `s` - the `ObjectOutputStream` to write to
        Throws:
          `IOException` - if an I/O error occurs

  - ### Class javax.naming.CompoundName

    class CompoundName extends Object implements Serializable
    serialVersionUID:
      3513100557083972036L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        The readObject method is called to restore the state of the `CompoundName` from a stream. See `writeObject` for a description of the serial form.
        Parameters:
          `s` - the `ObjectInputStream` to read from
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if the class of a serialized object could not be found

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        The writeObject method is called to save the state of the `CompoundName` to a stream.
        Serial Data:
          The syntax `Properties`, followed by the number of components (an `int`), and the individual components (each a `String`).
        Parameters:
          `s` - the `ObjectOutputStream` to write to
        Throws:
          `IOException` - if an I/O error occurs

  - ### Exception Class javax.naming.ConfigurationException

    class ConfigurationException extends NamingException implements Serializable
    serialVersionUID:
      -2535156726228855704L

  - ### Exception Class javax.naming.ContextNotEmptyException

    class ContextNotEmptyException extends NamingException implements Serializable
    serialVersionUID:
      1090963683348219877L

  - ### Exception Class javax.naming.InsufficientResourcesException

    class InsufficientResourcesException extends NamingException implements Serializable
    serialVersionUID:
      6227672693037844532L

  - ### Exception Class javax.naming.InterruptedNamingException

    class InterruptedNamingException extends NamingException implements Serializable
    serialVersionUID:
      6404516648893194728L

  - ### Exception Class javax.naming.InvalidNameException

    class InvalidNameException extends NamingException implements Serializable
    serialVersionUID:
      -8370672380823801105L

  - ### Exception Class javax.naming.LimitExceededException

    class LimitExceededException extends NamingException implements Serializable
    serialVersionUID:
      -776898738660207856L

  - ### Exception Class javax.naming.LinkException

    class LinkException extends NamingException implements Serializable
    serialVersionUID:
      -7967662604076777712L

    - #### Serialized Fields

      - ##### linkExplanation

            String linkExplanation

        Contains the exception of why resolution of the link failed. Can be null. This field is initialized by the constructors. You should access and manipulate this field through its get and set methods.
        See Also:
          - `LinkException.getLinkExplanation()`
          - `LinkException.setLinkExplanation(java.lang.String)`

      - ##### linkRemainingName

            Name linkRemainingName

        Contains the remaining link name that has not been resolved yet. It is a composite name and can be null. This field is initialized by the constructors. You should access and manipulate this field through its get and set methods.
        See Also:
          - `LinkException.getLinkRemainingName()`
          - `LinkException.setLinkRemainingName(javax.naming.Name)`

      - ##### linkResolvedName

            Name linkResolvedName

        Contains the part of the link that has been successfully resolved. It is a composite name and can be null. This field is initialized by the constructors. You should access and manipulate this field through its get and set methods.
        See Also:
          - `LinkException.getLinkResolvedName()`
          - `LinkException.setLinkResolvedName(javax.naming.Name)`

      - ##### linkResolvedObj

            Object linkResolvedObj

        Contains the object to which resolution of the part of the link was successful. Can be null. This field is initialized by the constructors. You should access and manipulate this field through its get and set methods.
        See Also:
          - `LinkException.getLinkResolvedObj()`
          - `LinkException.setLinkResolvedObj(java.lang.Object)`

  - ### Exception Class javax.naming.LinkLoopException

    class LinkLoopException extends LinkException implements Serializable
    serialVersionUID:
      -3119189944325198009L

  - ### Class javax.naming.LinkRef

    class LinkRef extends Reference implements Serializable
    serialVersionUID:
      -5386290613498931298L

  - ### Exception Class javax.naming.MalformedLinkException

    class MalformedLinkException extends LinkException implements Serializable
    serialVersionUID:
      -3066740437737830242L

  - ### Exception Class javax.naming.NameAlreadyBoundException

    class NameAlreadyBoundException extends NamingException implements Serializable
    serialVersionUID:
      -8491441000356780586L

  - ### Class javax.naming.NameClassPair

    class NameClassPair extends Object implements Serializable
    serialVersionUID:
      5620776610160863339L

    - #### Serialized Fields

      - ##### className

            String className

        Contains the class name contained in this NameClassPair. It is initialized by the constructor and can be updated using `setClassName()`.
        See Also:
          - `NameClassPair.getClassName()`
          - `NameClassPair.setClassName(java.lang.String)`

      - ##### fullName

            String fullName

        Contains the full name of this NameClassPair within its own namespace. It is initialized using `setNameInNamespace()`
        See Also:
          - `NameClassPair.getNameInNamespace()`
          - `NameClassPair.setNameInNamespace(java.lang.String)`

      - ##### isRel

            boolean isRel

        Records whether the name of this `NameClassPair` is relative to the target context. It is initialized by the constructor and can be updated using `setRelative()`.
        See Also:
          - `NameClassPair.isRelative()`
          - `NameClassPair.setRelative(boolean)`
          - `NameClassPair.getName()`
          - `NameClassPair.setName(java.lang.String)`

      - ##### name

            String name

        Contains the name of this NameClassPair. It is initialized by the constructor and can be updated using `setName()`.
        See Also:
          - `NameClassPair.getName()`
          - `NameClassPair.setName(java.lang.String)`

  - ### Exception Class javax.naming.NameNotFoundException

    class NameNotFoundException extends NamingException implements Serializable
    serialVersionUID:
      -8007156725367842053L

  - ### Exception Class javax.naming.NamingException

    class NamingException extends Exception implements Serializable
    serialVersionUID:
      -1299181962103167177L

    - #### Serialized Fields

      - ##### remainingName

            Name remainingName

        Contains the remaining name that has not been resolved yet. It is a composite name and can be null. This field is initialized by the constructors. You should access and manipulate this field through its get, set, "append" methods.
        See Also:
          - `NamingException.getRemainingName()`
          - `NamingException.setRemainingName(javax.naming.Name)`
          - `NamingException.appendRemainingName(javax.naming.Name)`
          - `NamingException.appendRemainingComponent(java.lang.String)`

      - ##### resolvedName

            Name resolvedName

        Contains the part of the name that has been successfully resolved. It is a composite name and can be null. This field is initialized by the constructors. You should access and manipulate this field through its get and set methods.
        See Also:
          - `NamingException.getResolvedName()`
          - `NamingException.setResolvedName(javax.naming.Name)`

      - ##### resolvedObj

            Object resolvedObj

        Contains the object to which resolution of the part of the name was successful. Can be null. This field is initialized by the constructors. You should access and manipulate this field through its get and set methods.
        See Also:
          - `NamingException.getResolvedObj()`
          - `NamingException.setResolvedObj(java.lang.Object)`

      - ##### rootException

            Throwable rootException

        Contains the original exception that caused this NamingException to be thrown. This field is set if there is additional information that could be obtained from the original exception, or if the original exception could not be mapped to a subclass of NamingException. Can be null.

        This field predates the general-purpose exception chaining facility. The `NamingException.initCause(Throwable)` and `NamingException.getCause()` methods are now the preferred means of accessing this information.

        See Also:
          - `NamingException.getRootCause()`
          - `NamingException.setRootCause(Throwable)`
          - `NamingException.initCause(Throwable)`
          - `NamingException.getCause()`

  - ### Exception Class javax.naming.NamingSecurityException

    class NamingSecurityException extends NamingException implements Serializable
    serialVersionUID:
      5855287647294685775L

  - ### Exception Class javax.naming.NoInitialContextException

    class NoInitialContextException extends NamingException implements Serializable
    serialVersionUID:
      -3413733186901258623L

  - ### Exception Class javax.naming.NoPermissionException

    class NoPermissionException extends NamingSecurityException implements Serializable
    serialVersionUID:
      8395332708699751775L

  - ### Exception Class javax.naming.NotContextException

    class NotContextException extends NamingException implements Serializable
    serialVersionUID:
      849752551644540417L

  - ### Exception Class javax.naming.OperationNotSupportedException

    class OperationNotSupportedException extends NamingException implements Serializable
    serialVersionUID:
      5493232822427682064L

  - ### Exception Class javax.naming.PartialResultException

    class PartialResultException extends NamingException implements Serializable
    serialVersionUID:
      2572144970049426786L

  - ### Class javax.naming.RefAddr

    class RefAddr extends Object implements Serializable
    serialVersionUID:
      -1468165120479154358L

    - #### Serialized Fields

      - ##### addrType

            String addrType

        Contains the type of this address.

  - ### Class javax.naming.Reference

    class Reference extends Object implements Serializable
    serialVersionUID:
      -1673475790065791735L

    - #### Serialized Fields

      - ##### addrs

            Vector<RefAddr> addrs

        Contains the addresses contained in this Reference. Initialized by constructor.

      - ##### classFactory

            String classFactory

        Contains the name of the factory class for creating an instance of the object to which this Reference refers. Initialized to null.

      - ##### classFactoryLocation

            String classFactoryLocation

        Contains the location of the factory class. Initialized to null.

      - ##### className

            String className

        Contains the fully-qualified name of the class of the object to which this Reference refers.
        See Also:
          - `Class.getName()`

  - ### Exception Class javax.naming.ReferralException

    class ReferralException extends NamingException implements Serializable
    serialVersionUID:
      -2881363844695698876L

  - ### Exception Class javax.naming.ServiceUnavailableException

    class ServiceUnavailableException extends NamingException implements Serializable
    serialVersionUID:
      -4996964726566773444L

  - ### Exception Class javax.naming.SizeLimitExceededException

    class SizeLimitExceededException extends LimitExceededException implements Serializable
    serialVersionUID:
      7129289564879168579L

  - ### Class javax.naming.StringRefAddr

    class StringRefAddr extends RefAddr implements Serializable
    serialVersionUID:
      -8913762495138505527L

    - #### Serialized Fields

      - ##### contents

            String contents

        Contains the contents of this address. Can be null.

  - ### Exception Class javax.naming.TimeLimitExceededException

    class TimeLimitExceededException extends LimitExceededException implements Serializable
    serialVersionUID:
      -3597009011385034696L

- ## Package javax.naming.directory

  - ### Exception Class javax.naming.directory.AttributeInUseException

    class AttributeInUseException extends NamingException implements Serializable
    serialVersionUID:
      4437710305529322564L

  - ### Exception Class javax.naming.directory.AttributeModificationException

    class AttributeModificationException extends NamingException implements Serializable
    serialVersionUID:
      8060676069678710186L

    - #### Serialized Fields

      - ##### unexecs

            ModificationItem[] unexecs

        Contains the possibly null list of unexecuted modifications.

  - ### Class javax.naming.directory.BasicAttribute

    class BasicAttribute extends Object implements Serializable
    serialVersionUID:
      6743528196119291326L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        The readObject method is called to restore the state of the `BasicAttribute` from a stream. See `writeObject` for a description of the serial form.
        Parameters:
          `s` - the `ObjectInputStream` to read from
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if the class of a serialized object could not be found

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        The writeObject method is called to save the state of the `BasicAttribute` to a stream.
        Serial Data:
          Default field (the attribute ID - a `String`), followed by the number of values (an `int`), and the individual values.
        Parameters:
          `s` - the `ObjectOutputStream` to write to
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### attrID

            String attrID

        Holds the attribute's id. It is initialized by the public constructor and cannot be null unless methods in BasicAttribute that use attrID have been overridden.

      - ##### ordered

            boolean ordered

        A flag for recording whether this attribute's values are ordered.

  - ### Class javax.naming.directory.BasicAttributes

    class BasicAttributes extends Object implements Serializable
    serialVersionUID:
      4980164073184639448L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        The readObject method is called to restore the state of the `BasicAttributes` from a stream. See `writeObject` for a description of the serial form.
        Parameters:
          `s` - the `ObjectInputStream` to read from
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if the class of a serialized object could not be found

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        The writeObject method is called to save the state of the `BasicAttributes` to a stream.
        Serial Data:
          Default field (ignoreCase flag - a `boolean`), followed by the number of attributes in the set (an `int`), and then the individual `Attribute` objects.
        Parameters:
          `s` - the `ObjectOutputStream` to write to
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### ignoreCase

            boolean ignoreCase

        Indicates whether case of attribute ids is ignored.

  - ### Exception Class javax.naming.directory.InvalidAttributeIdentifierException

    class InvalidAttributeIdentifierException extends NamingException implements Serializable
    serialVersionUID:
      -9036920266322999923L

  - ### Exception Class javax.naming.directory.InvalidAttributesException

    class InvalidAttributesException extends NamingException implements Serializable
    serialVersionUID:
      2607612850539889765L

  - ### Exception Class javax.naming.directory.InvalidAttributeValueException

    class InvalidAttributeValueException extends NamingException implements Serializable
    serialVersionUID:
      8720050295499275011L

  - ### Exception Class javax.naming.directory.InvalidSearchControlsException

    class InvalidSearchControlsException extends NamingException implements Serializable
    serialVersionUID:
      -5124108943352665777L

  - ### Exception Class javax.naming.directory.InvalidSearchFilterException

    class InvalidSearchFilterException extends NamingException implements Serializable
    serialVersionUID:
      2902700940682875441L

  - ### Class javax.naming.directory.ModificationItem

    class ModificationItem extends Object implements Serializable
    serialVersionUID:
      7573258562534746850L

    - #### Serialized Fields

      - ##### attr

            Attribute attr

        Contains the attribute identifying the attribute and/or its value to be applied for the modification.

      - ##### mod_op

            int mod_op

        Contains an integer identify the modification to be performed.

  - ### Exception Class javax.naming.directory.NoSuchAttributeException

    class NoSuchAttributeException extends NamingException implements Serializable
    serialVersionUID:
      4836415647935888137L

  - ### Exception Class javax.naming.directory.SchemaViolationException

    class SchemaViolationException extends NamingException implements Serializable
    serialVersionUID:
      -3041762429525049663L

  - ### Class javax.naming.directory.SearchControls

    class SearchControls extends Object implements Serializable
    serialVersionUID:
      -2480540967773454797L

    - #### Serialized Fields

      - ##### attributesToReturn

            String[] attributesToReturn

        Contains the list of attributes to be returned in `SearchResult` for each matching entry of search. `null` indicates that all attributes are to be returned.

      - ##### countLimit

            long countLimit

        Contains the maximum number of SearchResults to return.

      - ##### derefLink

            boolean derefLink

        Indicates whether JNDI links are dereferenced during search.

      - ##### returnObj

            boolean returnObj

        Indicates whether object is returned in `SearchResult`.

      - ##### searchScope

            int searchScope

        Contains the scope with which to apply the search. One of `ONELEVEL_SCOPE`, `OBJECT_SCOPE`, or `SUBTREE_SCOPE`.

      - ##### timeLimit

            int timeLimit

        Contains the milliseconds to wait before returning from search.

  - ### Class javax.naming.directory.SearchResult

    class SearchResult extends Binding implements Serializable
    serialVersionUID:
      -9158063327699723172L

    - #### Serialized Fields

      - ##### attrs

            Attributes attrs

        Contains the attributes returned with the object.

- ## Package javax.naming.event

  - ### Class javax.naming.event.NamingEvent

    class NamingEvent extends EventObject implements Serializable
    serialVersionUID:
      -7126752885365133499L

    - #### Serialized Fields

      - ##### changeInfo

            Object changeInfo

        Contains information about the change that generated this event.

      - ##### newBinding

            Binding newBinding

        Contains information about the object after the change.

      - ##### oldBinding

            Binding oldBinding

        Contains information about the object before the change.

      - ##### type

            int type

        Contains the type of this event.
        See Also:
          - `NamingEvent.OBJECT_ADDED`
          - `NamingEvent.OBJECT_REMOVED`
          - `NamingEvent.OBJECT_RENAMED`
          - `NamingEvent.OBJECT_CHANGED`

  - ### Class javax.naming.event.NamingExceptionEvent

    class NamingExceptionEvent extends EventObject implements Serializable
    serialVersionUID:
      -4877678086134736336L

    - #### Serialized Fields

      - ##### exception

            NamingException exception

        Contains the exception that was thrown

- ## Package javax.naming.ldap

  - ### Class javax.naming.ldap.BasicControl

    class BasicControl extends Object implements Serializable
    serialVersionUID:
      -4233907508771791687L

    - #### Serialized Fields

      - ##### criticality

            boolean criticality

        The control's criticality.

      - ##### id

            String id

        The control's object identifier string.

      - ##### value

            byte[] value

        The control's ASN.1 BER encoded value.

  - ### Class javax.naming.ldap.LdapName

    class LdapName extends Object implements Serializable
    serialVersionUID:
      -1595520034788997356L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        The readObject method is called to restore the state of the `LdapName` from a stream. See `writeObject` for a description of the serial form.
        Parameters:
          `s` - the `ObjectInputStream` to read from
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if the class of a serialized object could not be found

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        The writeObject method is called to save the state of the `LdapName` to a stream. Serializes only the unparsed DN, for compactness and to avoid any implementation dependency.
        Serial Data:
          The DN `String` representation of this LDAP name.
        Parameters:
          `s` - the `ObjectOutputStream` to write to
        Throws:
          `IOException` - if an I/O error occurs

  - ### Exception Class javax.naming.ldap.LdapReferralException

    class LdapReferralException extends ReferralException implements Serializable
    serialVersionUID:
      -1668992791764950804L

  - ### Class javax.naming.ldap.ManageReferralControl

    class ManageReferralControl extends BasicControl implements Serializable
    serialVersionUID:
      3017756160149982566L

  - ### Class javax.naming.ldap.PagedResultsControl

    class PagedResultsControl extends BasicControl implements Serializable
    serialVersionUID:
      6684806685736844298L

  - ### Class javax.naming.ldap.PagedResultsResponseControl

    class PagedResultsResponseControl extends BasicControl implements Serializable
    serialVersionUID:
      -8819778744844514666L

    - #### Serialized Fields

      - ##### cookie

            byte[] cookie

        A server-generated cookie.

      - ##### resultSize

            int resultSize

        An estimate of the number of entries in the search result.

  - ### Class javax.naming.ldap.Rdn

    class Rdn extends Object implements Serializable
    serialVersionUID:
      -5994465067210009656L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        The readObject method is called to restore the state of the `Rdn` from a stream. See `writeObject` for a description of the serial form.
        Parameters:
          `s` - the `ObjectInputStream` to read from
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if the class of a serialized object could not be found

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        The writeObject method is called to save the state of the `Rdn` to a stream. Serializes only the unparsed RDN, for compactness and to avoid any implementation dependency.
        Serial Data:
          The unparsed RDN `String` representation.
        Parameters:
          `s` - the `ObjectOutputStream` to write to
        Throws:
          `IOException` - if an I/O error occurs

  - ### Class javax.naming.ldap.SortControl

    class SortControl extends BasicControl implements Serializable
    serialVersionUID:
      -1965961680233330744L

  - ### Class javax.naming.ldap.SortResponseControl

    class SortResponseControl extends BasicControl implements Serializable
    serialVersionUID:
      5142939176006310877L

    - #### Serialized Fields

      - ##### badAttrId

            String badAttrId

        The ID of the attribute that caused the sort to fail.

      - ##### resultCode

            int resultCode

        The sort result code.

  - ### Class javax.naming.ldap.StartTlsRequest

    class StartTlsRequest extends Object implements Serializable
    serialVersionUID:
      4441679576360753397L

  - ### Class javax.naming.ldap.StartTlsResponse

    class StartTlsResponse extends Object implements Serializable
    serialVersionUID:
      8372842182579276418L

  - ### Class javax.naming.ldap.UnsolicitedNotificationEvent

    class UnsolicitedNotificationEvent extends EventObject implements Serializable
    serialVersionUID:
      -2382603380799883705L

    - #### Serialized Fields

      - ##### notice

            UnsolicitedNotification notice

        The notification that caused this event to be fired.

- ## Package javax.naming.spi

  - ### Class javax.naming.spi.ResolveResult

    class ResolveResult extends Object implements Serializable
    serialVersionUID:
      -4552108072002407559L

    - #### Serialized Fields

      - ##### remainingName

            Name remainingName

        Field containing the remaining name yet to be resolved. It can be null only when constructed using a subclass. Constructors should always initialize this.

      - ##### resolvedObj

            Object resolvedObj

        Field containing the Object that was resolved to successfully. It can be null only when constructed using a subclass. Constructors should always initialize this.

- ## Package javax.net.ssl

  - ### Class javax.net.ssl.HandshakeCompletedEvent

    class HandshakeCompletedEvent extends EventObject implements Serializable
    serialVersionUID:
      7914963744257769778L

  - ### Exception Class javax.net.ssl.SSLException

    class SSLException extends IOException implements Serializable
    serialVersionUID:
      4511006460650708967L

  - ### Exception Class javax.net.ssl.SSLHandshakeException

    class SSLHandshakeException extends SSLException implements Serializable
    serialVersionUID:
      -5045881315018326890L

  - ### Exception Class javax.net.ssl.SSLKeyException

    class SSLKeyException extends SSLException implements Serializable
    serialVersionUID:
      -8071664081941937874L

  - ### Exception Class javax.net.ssl.SSLPeerUnverifiedException

    class SSLPeerUnverifiedException extends SSLException implements Serializable
    serialVersionUID:
      -8919512675000600547L

  - ### Class javax.net.ssl.SSLPermission

    class SSLPermission extends BasicPermission implements Serializable
    serialVersionUID:
      -3456898025505876775L

  - ### Exception Class javax.net.ssl.SSLProtocolException

    class SSLProtocolException extends SSLException implements Serializable
    serialVersionUID:
      5445067063799134928L

  - ### Class javax.net.ssl.SSLSessionBindingEvent

    class SSLSessionBindingEvent extends EventObject implements Serializable
    serialVersionUID:
      3989172637106345L

    - #### Serialized Fields

      - ##### name

            String name

        The name to which the object is being bound or unbound

- ## Package javax.print

  - ### Class javax.print.DocFlavor

    class DocFlavor extends Object implements Serializable
    serialVersionUID:
      -4512080796965449721L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reconstitute an instance from a stream (that is, deserialize it).
        Serial Data:
          The serialised form of a `DocFlavor` is the `String` naming the representation class followed by the `String` representing the canonical form of the mime type
        Parameters:
          `s` - the input stream
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found
          `IOException` - if I/O errors occur while reading from the underlying stream

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Write the instance to a stream (ie serialize the object).
        Parameters:
          `s` - the output stream
        Throws:
          `IOException` - if I/O errors occur while writing to the underlying stream

    - #### Serialized Fields

      - ##### myClassName

            String myClassName

        Representation class name.

  - ### Class javax.print.DocFlavor.BYTE_ARRAY

    class BYTE_ARRAY extends DocFlavor implements Serializable
    serialVersionUID:
      -9065578006593857475L

  - ### Class javax.print.DocFlavor.CHAR_ARRAY

    class CHAR_ARRAY extends DocFlavor implements Serializable
    serialVersionUID:
      -8720590903724405128L

  - ### Class javax.print.DocFlavor.INPUT_STREAM

    class INPUT_STREAM extends DocFlavor implements Serializable
    serialVersionUID:
      -7045842700749194127L

  - ### Class javax.print.DocFlavor.READER

    class READER extends DocFlavor implements Serializable
    serialVersionUID:
      7100295812579351567L

  - ### Class javax.print.DocFlavor.SERVICE_FORMATTED

    class SERVICE_FORMATTED extends DocFlavor implements Serializable
    serialVersionUID:
      6181337766266637256L

  - ### Class javax.print.DocFlavor.STRING

    class STRING extends DocFlavor implements Serializable
    serialVersionUID:
      4414407504887034035L

  - ### Class javax.print.DocFlavor.URL

    class URL extends DocFlavor implements Serializable
    serialVersionUID:
      2936725788144902062L

  - ### Exception Class javax.print.PrintException

    class PrintException extends Exception implements Serializable
    serialVersionUID:
      -5932531546705242471L

- ## Package javax.print.attribute

  - ### Class javax.print.attribute.AttributeSetUtilities.SynchronizedAttributeSet

    class SynchronizedAttributeSet extends Object implements Serializable
    serialVersionUID:
      8365731020128564925L

    - #### Serialized Fields

      - ##### attrset

            AttributeSet attrset

        The attribute set.

  - ### Class javax.print.attribute.AttributeSetUtilities.SynchronizedDocAttributeSet

    class SynchronizedDocAttributeSet extends javax.print.attribute.AttributeSetUtilities.SynchronizedAttributeSet implements Serializable
    serialVersionUID:
      6455869095246629354L

  - ### Class javax.print.attribute.AttributeSetUtilities.SynchronizedPrintJobAttributeSet

    class SynchronizedPrintJobAttributeSet extends javax.print.attribute.AttributeSetUtilities.SynchronizedAttributeSet implements Serializable
    serialVersionUID:
      2117188707856965749L

  - ### Class javax.print.attribute.AttributeSetUtilities.SynchronizedPrintRequestAttributeSet

    class SynchronizedPrintRequestAttributeSet extends javax.print.attribute.AttributeSetUtilities.SynchronizedAttributeSet implements Serializable
    serialVersionUID:
      5671237023971169027L

  - ### Class javax.print.attribute.AttributeSetUtilities.SynchronizedPrintServiceAttributeSet

    class SynchronizedPrintServiceAttributeSet extends javax.print.attribute.AttributeSetUtilities.SynchronizedAttributeSet implements Serializable
    serialVersionUID:
      -2830705374001675073L

  - ### Class javax.print.attribute.AttributeSetUtilities.UnmodifiableAttributeSet

    class UnmodifiableAttributeSet extends Object implements Serializable
    serialVersionUID:
      -6131802583863447813L

    - #### Serialized Fields

      - ##### attrset

            AttributeSet attrset

        The attribute set.

  - ### Class javax.print.attribute.AttributeSetUtilities.UnmodifiableDocAttributeSet

    class UnmodifiableDocAttributeSet extends javax.print.attribute.AttributeSetUtilities.UnmodifiableAttributeSet implements Serializable
    serialVersionUID:
      -6349408326066898956L

  - ### Class javax.print.attribute.AttributeSetUtilities.UnmodifiablePrintJobAttributeSet

    class UnmodifiablePrintJobAttributeSet extends javax.print.attribute.AttributeSetUtilities.UnmodifiableAttributeSet implements Serializable
    serialVersionUID:
      -8002245296274522112L

  - ### Class javax.print.attribute.AttributeSetUtilities.UnmodifiablePrintRequestAttributeSet

    class UnmodifiablePrintRequestAttributeSet extends javax.print.attribute.AttributeSetUtilities.UnmodifiableAttributeSet implements Serializable
    serialVersionUID:
      7799373532614825073L

  - ### Class javax.print.attribute.AttributeSetUtilities.UnmodifiablePrintServiceAttributeSet

    class UnmodifiablePrintServiceAttributeSet extends javax.print.attribute.AttributeSetUtilities.UnmodifiableAttributeSet implements Serializable
    serialVersionUID:
      -7112165137107826819L

  - ### Class javax.print.attribute.DateTimeSyntax

    class DateTimeSyntax extends Object implements Serializable
    serialVersionUID:
      -1400819079791208582L

    - #### Serialized Fields

      - ##### value

            Date value

        This date-time attribute's `java.util.Date` value.

  - ### Class javax.print.attribute.EnumSyntax

    class EnumSyntax extends Object implements Serializable
    serialVersionUID:
      -2739521845085831642L

    - #### Serialization Methods

      - ##### readResolve

        protected Object readResolve() throws ObjectStreamException
        During object input, convert this deserialized enumeration instance to the proper enumeration value defined in the enumeration attribute class.
        Throws:
          `ObjectStreamException` - if the stream can't be deserialised
          `InvalidObjectException` - if the enumeration value table is `null`, this enumeration value's integer value does not correspond to an element in the enumeration value table, or the corresponding element in the enumeration value table is `null`. (Note: `InvalidObjectException` is a subclass of `ObjectStreamException`, which `readResolve()` is declared to throw.)

    - #### Serialized Fields

      - ##### value

            int value

        This enumeration value's integer value.

  - ### Class javax.print.attribute.HashAttributeSet

    class HashAttributeSet extends Object implements Serializable
    serialVersionUID:
      5311560590283707917L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
        Reconstitute an instance from a stream that is, deserialize it).
        Parameters:
          `s` - the input stream
        Throws:
          `ClassNotFoundException` - if the class is not found
          `IOException` - if an I/O exception has occurred

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Write the instance to a stream (ie serialize the object).
        Serial Data:
          The serialized form of an attribute set explicitly writes the number of attributes in the set, and each of the attributes. This does not guarantee equality of serialized forms since the order in which the attributes are written is not defined.
        Parameters:
          `s` - the output stream
        Throws:
          `IOException` - if an I/O exception has occurred

    - #### Serialized Fields

      - ##### myInterface

            Class<?> myInterface

        The interface of which all members of this attribute set must be an instance. It is assumed to be interface `Attribute` or a subinterface thereof.

  - ### Class javax.print.attribute.HashDocAttributeSet

    class HashDocAttributeSet extends HashAttributeSet implements Serializable
    serialVersionUID:
      -1128534486061432528L

  - ### Class javax.print.attribute.HashPrintJobAttributeSet

    class HashPrintJobAttributeSet extends HashAttributeSet implements Serializable
    serialVersionUID:
      -4204473656070350348L

  - ### Class javax.print.attribute.HashPrintRequestAttributeSet

    class HashPrintRequestAttributeSet extends HashAttributeSet implements Serializable
    serialVersionUID:
      2364756266107751933L

  - ### Class javax.print.attribute.HashPrintServiceAttributeSet

    class HashPrintServiceAttributeSet extends HashAttributeSet implements Serializable
    serialVersionUID:
      6642904616179203070L

  - ### Class javax.print.attribute.IntegerSyntax

    class IntegerSyntax extends Object implements Serializable
    serialVersionUID:
      3644574816328081943L

    - #### Serialized Fields

      - ##### value

            int value

        This integer attribute's integer value.

  - ### Class javax.print.attribute.ResolutionSyntax

    class ResolutionSyntax extends Object implements Serializable
    serialVersionUID:
      2706743076526672017L

    - #### Serialized Fields

      - ##### crossFeedResolution

            int crossFeedResolution

        Cross feed direction resolution in units of dots per 100 inches (dphi).

      - ##### feedResolution

            int feedResolution

        Feed direction resolution in units of dots per 100 inches (dphi).

  - ### Class javax.print.attribute.SetOfIntegerSyntax

    class SetOfIntegerSyntax extends Object implements Serializable
    serialVersionUID:
      3666874174847632203L

    - #### Serialized Fields

      - ##### members

            int[][] members

        This set's members in canonical array form.

  - ### Class javax.print.attribute.Size2DSyntax

    class Size2DSyntax extends Object implements Serializable
    serialVersionUID:
      5584439964938660530L

    - #### Serialized Fields

      - ##### x

            int x

        `X` dimension in units of micrometers (µm).

      - ##### y

            int y

        `Y` dimension in units of micrometers (µm).

  - ### Class javax.print.attribute.TextSyntax

    class TextSyntax extends Object implements Serializable
    serialVersionUID:
      -8130648736378144102L

    - #### Serialized Fields

      - ##### locale

            Locale locale

        Locale of this text attribute.

      - ##### value

            String value

        String value of this text attribute.

  - ### Exception Class javax.print.attribute.UnmodifiableSetException

    class UnmodifiableSetException extends RuntimeException implements Serializable
    serialVersionUID:
      2255250308571511731L

  - ### Class javax.print.attribute.URISyntax

    class URISyntax extends Object implements Serializable
    serialVersionUID:
      -7842661210486401678L

    - #### Serialized Fields

      - ##### uri

            URI uri

        `URI` value of this `URI` attribute.

- ## Package javax.print.attribute.standard

  - ### Class javax.print.attribute.standard.Chromaticity

    class Chromaticity extends EnumSyntax implements Serializable
    serialVersionUID:
      4660543931355214012L

  - ### Class javax.print.attribute.standard.ColorSupported

    class ColorSupported extends EnumSyntax implements Serializable
    serialVersionUID:
      -2700555589688535545L

  - ### Class javax.print.attribute.standard.Compression

    class Compression extends EnumSyntax implements Serializable
    serialVersionUID:
      -5716748913324997674L

  - ### Class javax.print.attribute.standard.Copies

    class Copies extends IntegerSyntax implements Serializable
    serialVersionUID:
      -6426631521680023833L

  - ### Class javax.print.attribute.standard.CopiesSupported

    class CopiesSupported extends SetOfIntegerSyntax implements Serializable
    serialVersionUID:
      6927711687034846001L

  - ### Class javax.print.attribute.standard.DateTimeAtCompleted

    class DateTimeAtCompleted extends DateTimeSyntax implements Serializable
    serialVersionUID:
      6497399708058490000L

  - ### Class javax.print.attribute.standard.DateTimeAtCreation

    class DateTimeAtCreation extends DateTimeSyntax implements Serializable
    serialVersionUID:
      -2923732231056647903L

  - ### Class javax.print.attribute.standard.DateTimeAtProcessing

    class DateTimeAtProcessing extends DateTimeSyntax implements Serializable
    serialVersionUID:
      -3710068197278263244L

  - ### Class javax.print.attribute.standard.Destination

    class Destination extends URISyntax implements Serializable
    serialVersionUID:
      6776739171700415321L

  - ### Class javax.print.attribute.standard.DialogOwner

    class DialogOwner extends Object implements Serializable
    serialVersionUID:
      -1901909867156076547L

    - #### Serialized Fields

      - ##### owner

            Window owner

        The owner of the dialog.

  - ### Class javax.print.attribute.standard.DialogTypeSelection

    class DialogTypeSelection extends EnumSyntax implements Serializable
    serialVersionUID:
      7518682952133256029L

  - ### Class javax.print.attribute.standard.DocumentName

    class DocumentName extends TextSyntax implements Serializable
    serialVersionUID:
      7883105848533280430L

  - ### Class javax.print.attribute.standard.Fidelity

    class Fidelity extends EnumSyntax implements Serializable
    serialVersionUID:
      6320827847329172308L

  - ### Class javax.print.attribute.standard.Finishings

    class Finishings extends EnumSyntax implements Serializable
    serialVersionUID:
      -627840419548391754L

  - ### Class javax.print.attribute.standard.JobHoldUntil

    class JobHoldUntil extends DateTimeSyntax implements Serializable
    serialVersionUID:
      -1664471048860415024L

  - ### Class javax.print.attribute.standard.JobImpressions

    class JobImpressions extends IntegerSyntax implements Serializable
    serialVersionUID:
      8225537206784322464L

  - ### Class javax.print.attribute.standard.JobImpressionsCompleted

    class JobImpressionsCompleted extends IntegerSyntax implements Serializable
    serialVersionUID:
      6722648442432393294L

  - ### Class javax.print.attribute.standard.JobImpressionsSupported

    class JobImpressionsSupported extends SetOfIntegerSyntax implements Serializable
    serialVersionUID:
      -4887354803843173692L

  - ### Class javax.print.attribute.standard.JobKOctets

    class JobKOctets extends IntegerSyntax implements Serializable
    serialVersionUID:
      -8959710146498202869L

  - ### Class javax.print.attribute.standard.JobKOctetsProcessed

    class JobKOctetsProcessed extends IntegerSyntax implements Serializable
    serialVersionUID:
      -6265238509657881806L

  - ### Class javax.print.attribute.standard.JobKOctetsSupported

    class JobKOctetsSupported extends SetOfIntegerSyntax implements Serializable
    serialVersionUID:
      -2867871140549897443L

  - ### Class javax.print.attribute.standard.JobMediaSheets

    class JobMediaSheets extends IntegerSyntax implements Serializable
    serialVersionUID:
      408871131531979741L

  - ### Class javax.print.attribute.standard.JobMediaSheetsCompleted

    class JobMediaSheetsCompleted extends IntegerSyntax implements Serializable
    serialVersionUID:
      1739595973810840475L

  - ### Class javax.print.attribute.standard.JobMediaSheetsSupported

    class JobMediaSheetsSupported extends SetOfIntegerSyntax implements Serializable
    serialVersionUID:
      2953685470388672940L

  - ### Class javax.print.attribute.standard.JobMessageFromOperator

    class JobMessageFromOperator extends TextSyntax implements Serializable
    serialVersionUID:
      -4620751846003142047L

  - ### Class javax.print.attribute.standard.JobName

    class JobName extends TextSyntax implements Serializable
    serialVersionUID:
      4660359192078689545L

  - ### Class javax.print.attribute.standard.JobOriginatingUserName

    class JobOriginatingUserName extends TextSyntax implements Serializable
    serialVersionUID:
      -8052537926362933477L

  - ### Class javax.print.attribute.standard.JobPriority

    class JobPriority extends IntegerSyntax implements Serializable
    serialVersionUID:
      -4599900369040602769L

  - ### Class javax.print.attribute.standard.JobPrioritySupported

    class JobPrioritySupported extends IntegerSyntax implements Serializable
    serialVersionUID:
      2564840378013555894L

  - ### Class javax.print.attribute.standard.JobSheets

    class JobSheets extends EnumSyntax implements Serializable
    serialVersionUID:
      -4735258056132519759L

  - ### Class javax.print.attribute.standard.JobState

    class JobState extends EnumSyntax implements Serializable
    serialVersionUID:
      400465010094018920L

  - ### Class javax.print.attribute.standard.JobStateReason

    class JobStateReason extends EnumSyntax implements Serializable
    serialVersionUID:
      -8765894420449009168L

  - ### Class javax.print.attribute.standard.JobStateReasons

    class JobStateReasons extends HashSet<JobStateReason> implements Serializable
    serialVersionUID:
      8849088261264331812L

  - ### Class javax.print.attribute.standard.Media

    class Media extends EnumSyntax implements Serializable
    serialVersionUID:
      -2823970704630722439L

  - ### Class javax.print.attribute.standard.MediaName

    class MediaName extends Media implements Serializable
    serialVersionUID:
      4653117714524155448L

  - ### Class javax.print.attribute.standard.MediaPrintableArea

    class MediaPrintableArea extends Object implements Serializable
    serialVersionUID:
      -1597171464050795793L

    - #### Serialized Fields

      - ##### h

            int h

        Printable `x`, `y`, `width` and `height`.

      - ##### units

            int units

        The units in which the values are expressed.

      - ##### w

            int w

        Printable `x`, `y`, `width` and `height`.

      - ##### x

            int x

        Printable `x`, `y`, `width` and `height`.

      - ##### y

            int y

        Printable `x`, `y`, `width` and `height`.

  - ### Class javax.print.attribute.standard.MediaSize

    class MediaSize extends Size2DSyntax implements Serializable
    serialVersionUID:
      -1967958664615414771L

    - #### Serialized Fields

      - ##### mediaName

            MediaSizeName mediaName

        The media name.

  - ### Class javax.print.attribute.standard.MediaSizeName

    class MediaSizeName extends Media implements Serializable
    serialVersionUID:
      2778798329756942747L

  - ### Class javax.print.attribute.standard.MediaTray

    class MediaTray extends Media implements Serializable
    serialVersionUID:
      -982503611095214703L

  - ### Class javax.print.attribute.standard.MultipleDocumentHandling

    class MultipleDocumentHandling extends EnumSyntax implements Serializable
    serialVersionUID:
      8098326460746413466L

  - ### Class javax.print.attribute.standard.NumberOfDocuments

    class NumberOfDocuments extends IntegerSyntax implements Serializable
    serialVersionUID:
      7891881310684461097L

  - ### Class javax.print.attribute.standard.NumberOfInterveningJobs

    class NumberOfInterveningJobs extends IntegerSyntax implements Serializable
    serialVersionUID:
      2568141124844982746L

  - ### Class javax.print.attribute.standard.NumberUp

    class NumberUp extends IntegerSyntax implements Serializable
    serialVersionUID:
      -3040436486786527811L

  - ### Class javax.print.attribute.standard.NumberUpSupported

    class NumberUpSupported extends SetOfIntegerSyntax implements Serializable
    serialVersionUID:
      -1041573395759141805L

  - ### Class javax.print.attribute.standard.OrientationRequested

    class OrientationRequested extends EnumSyntax implements Serializable
    serialVersionUID:
      -4447437289862822276L

  - ### Class javax.print.attribute.standard.OutputDeviceAssigned

    class OutputDeviceAssigned extends TextSyntax implements Serializable
    serialVersionUID:
      5486733778854271081L

  - ### Class javax.print.attribute.standard.PageRanges

    class PageRanges extends SetOfIntegerSyntax implements Serializable
    serialVersionUID:
      8639895197656148392L

  - ### Class javax.print.attribute.standard.PagesPerMinute

    class PagesPerMinute extends IntegerSyntax implements Serializable
    serialVersionUID:
      -6366403993072862015L

  - ### Class javax.print.attribute.standard.PagesPerMinuteColor

    class PagesPerMinuteColor extends IntegerSyntax implements Serializable
    serialVersionUID:
      1684993151687470944L

  - ### Class javax.print.attribute.standard.PDLOverrideSupported

    class PDLOverrideSupported extends EnumSyntax implements Serializable
    serialVersionUID:
      -4393264467928463934L

  - ### Class javax.print.attribute.standard.PresentationDirection

    class PresentationDirection extends EnumSyntax implements Serializable
    serialVersionUID:
      8294728067230931780L

  - ### Class javax.print.attribute.standard.PrinterInfo

    class PrinterInfo extends TextSyntax implements Serializable
    serialVersionUID:
      7765280618777599727L

  - ### Class javax.print.attribute.standard.PrinterIsAcceptingJobs

    class PrinterIsAcceptingJobs extends EnumSyntax implements Serializable
    serialVersionUID:
      -5052010680537678061L

  - ### Class javax.print.attribute.standard.PrinterLocation

    class PrinterLocation extends TextSyntax implements Serializable
    serialVersionUID:
      -1598610039865566337L

  - ### Class javax.print.attribute.standard.PrinterMakeAndModel

    class PrinterMakeAndModel extends TextSyntax implements Serializable
    serialVersionUID:
      4580461489499351411L

  - ### Class javax.print.attribute.standard.PrinterMessageFromOperator

    class PrinterMessageFromOperator extends TextSyntax implements Serializable
    serialVersionUID:
      -4486871203218629318L

  - ### Class javax.print.attribute.standard.PrinterMoreInfo

    class PrinterMoreInfo extends URISyntax implements Serializable
    serialVersionUID:
      4555850007675338574L

  - ### Class javax.print.attribute.standard.PrinterMoreInfoManufacturer

    class PrinterMoreInfoManufacturer extends URISyntax implements Serializable
    serialVersionUID:
      3323271346485076608L

  - ### Class javax.print.attribute.standard.PrinterName

    class PrinterName extends TextSyntax implements Serializable
    serialVersionUID:
      299740639137803127L

  - ### Class javax.print.attribute.standard.PrinterResolution

    class PrinterResolution extends ResolutionSyntax implements Serializable
    serialVersionUID:
      13090306561090558L

  - ### Class javax.print.attribute.standard.PrinterState

    class PrinterState extends EnumSyntax implements Serializable
    serialVersionUID:
      -649578618346507718L

  - ### Class javax.print.attribute.standard.PrinterStateReason

    class PrinterStateReason extends EnumSyntax implements Serializable
    serialVersionUID:
      -1623720656201472593L

  - ### Class javax.print.attribute.standard.PrinterStateReasons

    class PrinterStateReasons extends HashMap<PrinterStateReason,Severity> implements Serializable
    serialVersionUID:
      -3731791085163619457L

  - ### Class javax.print.attribute.standard.PrinterURI

    class PrinterURI extends URISyntax implements Serializable
    serialVersionUID:
      7923912792485606497L

  - ### Class javax.print.attribute.standard.PrintQuality

    class PrintQuality extends EnumSyntax implements Serializable
    serialVersionUID:
      -3072341285225858365L

  - ### Class javax.print.attribute.standard.QueuedJobCount

    class QueuedJobCount extends IntegerSyntax implements Serializable
    serialVersionUID:
      7499723077864047742L

  - ### Class javax.print.attribute.standard.ReferenceUriSchemesSupported

    class ReferenceUriSchemesSupported extends EnumSyntax implements Serializable
    serialVersionUID:
      -8989076942813442805L

  - ### Class javax.print.attribute.standard.RequestingUserName

    class RequestingUserName extends TextSyntax implements Serializable
    serialVersionUID:
      -2683049894310331454L

  - ### Class javax.print.attribute.standard.Severity

    class Severity extends EnumSyntax implements Serializable
    serialVersionUID:
      8781881462717925380L

  - ### Class javax.print.attribute.standard.SheetCollate

    class SheetCollate extends EnumSyntax implements Serializable
    serialVersionUID:
      7080587914259873003L

  - ### Class javax.print.attribute.standard.Sides

    class Sides extends EnumSyntax implements Serializable
    serialVersionUID:
      -6890309414893262822L

- ## Package javax.print.event

  - ### Class javax.print.event.PrintEvent

    class PrintEvent extends EventObject implements Serializable
    serialVersionUID:
      2286914924430763847L

  - ### Class javax.print.event.PrintJobAttributeEvent

    class PrintJobAttributeEvent extends PrintEvent implements Serializable
    serialVersionUID:
      -6534469883874742101L

    - #### Serialized Fields

      - ##### attributes

            PrintJobAttributeSet attributes

        The printing service attributes that changed.

  - ### Class javax.print.event.PrintJobEvent

    class PrintJobEvent extends PrintEvent implements Serializable
    serialVersionUID:
      -1711656903622072997L

    - #### Serialized Fields

      - ##### reason

            int reason

        The reason of this event.

  - ### Class javax.print.event.PrintServiceAttributeEvent

    class PrintServiceAttributeEvent extends PrintEvent implements Serializable
    serialVersionUID:
      -7565987018140326600L

    - #### Serialized Fields

      - ##### attributes

            PrintServiceAttributeSet attributes

        The printing service attributes that changed.

- ## Package javax.rmi.ssl

  - ### Class javax.rmi.ssl.SslRMIClientSocketFactory

    class SslRMIClientSocketFactory extends Object implements Serializable
    serialVersionUID:
      -8310631444933958385L

- ## Package javax.script

  - ### Exception Class javax.script.ScriptException

    class ScriptException extends Exception implements Serializable
    serialVersionUID:
      8265071037049225001L

    - #### Serialized Fields

      - ##### columnNumber

            int columnNumber

      - ##### fileName

            String fileName

      - ##### lineNumber

            int lineNumber

- ## Package javax.security.auth

  - ### Class javax.security.auth.AuthPermission

    class AuthPermission extends BasicPermission implements Serializable
    serialVersionUID:
      5806031445061587174L

  - ### Exception Class javax.security.auth.DestroyFailedException

    class DestroyFailedException extends Exception implements Serializable
    serialVersionUID:
      -7790152857282749162L

  - ### Class javax.security.auth.PrivateCredentialPermission

    class PrivateCredentialPermission extends Permission implements Serializable
    serialVersionUID:
      5284372143517237068L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reads this object from a stream (i.e., deserializes it)
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

    - #### Serialized Fields

      - ##### credentialClass

            String credentialClass

      - ##### principals

            Set<Principal> principals

        The Principals associated with this permission. The set contains elements of type, `PrivateCredentialPermission.CredOwner`.

  - ### Class javax.security.auth.PrivateCredentialPermission.CredOwner

    class CredOwner extends Object implements Serializable
    serialVersionUID:
      -5607449830436408266L

    - #### Serialized Fields

      - ##### principalClass

            String principalClass

      - ##### principalName

            String principalName

  - ### Exception Class javax.security.auth.RefreshFailedException

    class RefreshFailedException extends Exception implements Serializable
    serialVersionUID:
      5058444488565265840L

  - ### Class javax.security.auth.Subject

    class Subject extends Object implements Serializable
    serialVersionUID:
      -8308522755600156056L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Reads this object from a stream (i.e., deserializes it)
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream oos) throws IOException
        Writes this object out to a stream (i.e., serializes it).
        Parameters:
          `oos` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### principals

            Set<Principal> principals

        A `Set` that provides a view of all of this Subject's Principals
        Each element in this set is a `java.security.Principal`. The set is a `Subject.SecureSet`.

      - ##### readOnly

            boolean readOnly

        Whether this Subject is read-only

  - ### Class javax.security.auth.Subject.SecureSet

    class SecureSet extends Object implements Serializable
    serialVersionUID:
      7911754171111800359L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Restores the state of this object from the stream.
        Parameters:
          `ois` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream oos) throws IOException
        Writes this object out to a stream (i.e., serializes it).
        Serial Data:
          If this is a private credential set, a security check is performed to ensure that the caller has permission to access each credential in the set. If the security check passes, the set is serialized.
        Parameters:
          `oos` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### elements

            LinkedList elements

        The elements in this set.

      - ##### this$0

            Subject this$0

        The outer Subject instance.

- ## Package javax.security.auth.callback

  - ### Class javax.security.auth.callback.ChoiceCallback

    class ChoiceCallback extends Object implements Serializable
    serialVersionUID:
      -3975664071579892167L

    - #### Serialized Fields

      - ##### choices

            String[] choices

        the list of choices
        Since:
          1.4

      - ##### defaultChoice

            int defaultChoice

        the choice to be used as the default choice
        Since:
          1.4

      - ##### multipleSelectionsAllowed

            boolean multipleSelectionsAllowed

        whether multiple selections are allowed from the list of choices
        Since:
          1.4

      - ##### prompt

            String prompt

        Since:
          1.4

      - ##### selections

            int[] selections

        the selected choices, represented as indexes into the `choices` list.
        Since:
          1.4

  - ### Class javax.security.auth.callback.ConfirmationCallback

    class ConfirmationCallback extends Object implements Serializable
    serialVersionUID:
      -9095656433782481624L

    - #### Serialized Fields

      - ##### defaultOption

            int defaultOption

        Since:
          1.4

      - ##### messageType

            int messageType

        Since:
          1.4

      - ##### options

            String[] options

        Since:
          1.4

      - ##### optionType

            int optionType

        Since:
          1.4

      - ##### prompt

            String prompt

        Since:
          1.4

      - ##### selection

            int selection

        Since:
          1.4

  - ### Class javax.security.auth.callback.LanguageCallback

    class LanguageCallback extends Object implements Serializable
    serialVersionUID:
      2019050433478903213L

    - #### Serialized Fields

      - ##### locale

            Locale locale

        Since:
          1.4

  - ### Class javax.security.auth.callback.NameCallback

    class NameCallback extends Object implements Serializable
    serialVersionUID:
      3770938795909392253L

    - #### Serialized Fields

      - ##### defaultName

            String defaultName

        Since:
          1.4

      - ##### inputName

            String inputName

        Since:
          1.4

      - ##### prompt

            String prompt

        Since:
          1.4

  - ### Class javax.security.auth.callback.PasswordCallback

    class PasswordCallback extends Object implements Serializable
    serialVersionUID:
      2267422647454909926L

    - #### Serialized Fields

      - ##### echoOn

            boolean echoOn

        Since:
          1.4

      - ##### inputPassword

            char[] inputPassword

        Since:
          1.4

      - ##### prompt

            String prompt

        Since:
          1.4

  - ### Class javax.security.auth.callback.TextInputCallback

    class TextInputCallback extends Object implements Serializable
    serialVersionUID:
      -8064222478852811804L

    - #### Serialized Fields

      - ##### defaultText

            String defaultText

        Since:
          1.4

      - ##### inputText

            String inputText

        Since:
          1.4

      - ##### prompt

            String prompt

        Since:
          1.4

  - ### Class javax.security.auth.callback.TextOutputCallback

    class TextOutputCallback extends Object implements Serializable
    serialVersionUID:
      1689502495511663102L

    - #### Serialized Fields

      - ##### message

            String message

        Since:
          1.4

      - ##### messageType

            int messageType

        Since:
          1.4

  - ### Exception Class javax.security.auth.callback.UnsupportedCallbackException

    class UnsupportedCallbackException extends Exception implements Serializable
    serialVersionUID:
      -6873556327655666839L

    - #### Serialized Fields

      - ##### callback

            Callback callback

- ## Package javax.security.auth.kerberos

  - ### Class javax.security.auth.kerberos.DelegationPermission

    class DelegationPermission extends BasicPermission implements Serializable
    serialVersionUID:
      883133252142523922L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the DelegationPermission from a stream.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        WriteObject is called to save the state of the DelegationPermission to a stream. The actions are serialized, and the superclass takes care of the name.
        Parameters:
          `s` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

  - ### Class javax.security.auth.kerberos.EncryptionKey

    class EncryptionKey extends Object implements Serializable
    serialVersionUID:
      9L

    - #### Serialized Fields

      - ##### key

            javax.security.auth.kerberos.KeyImpl key

        `KeyImpl` is serialized by writing out the ASN.1 encoded bytes of the encryption key.

  - ### Class javax.security.auth.kerberos.KerberosKey

    class KerberosKey extends Object implements Serializable
    serialVersionUID:
      -4625402278148246993L

    - #### Serialized Fields

      - ##### key

            javax.security.auth.kerberos.KeyImpl key

        `KeyImpl` is serialized by writing out the ASN.1 encoded bytes of the encryption key.

      - ##### principal

            KerberosPrincipal principal

        The principal that this secret key belongs to.

      - ##### versionNum

            int versionNum

        the version number of this secret key

  - ### Class javax.security.auth.kerberos.KerberosPrincipal

    class KerberosPrincipal extends Object implements Serializable
    serialVersionUID:
      -7374788026156829911L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Reads this object from a stream (i.e., deserializes it)
        Parameters:
          `ois` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream oos) throws IOException
        Save the `KerberosPrincipal` object to a stream
        Serial Data:
          this `KerberosPrincipal` is serialized by writing out the PrincipalName and the Realm in their DER-encoded form as specified in Section 5.2.2 of RFC4120.
        Parameters:
          `oos` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

  - ### Class javax.security.auth.kerberos.KerberosTicket

    class KerberosTicket extends Object implements Serializable
    serialVersionUID:
      7395334370157380539L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Restores the state of this object from the stream.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

    - #### Serialized Fields

      - ##### asn1Encoding

            byte[] asn1Encoding

        ASN.1 DER Encoding of the Ticket as defined in the Kerberos Protocol Specification RFC4120.

      - ##### authTime

            Date authTime

        Time of initial authentication

      - ##### client

            KerberosPrincipal client

        Client that owns the service ticket

      - ##### clientAddresses

            InetAddress[] clientAddresses

        The addresses from where the ticket may be used by the client. This field may be null when the ticket is usable from any address.

      - ##### endTime

            Date endTime

        Time after which the ticket will not be honored. (its expiration time).

      - ##### flags

            boolean[] flags

        Ticket Flags as defined in the Kerberos Protocol Specification RFC4120.

      - ##### proxy

            KerberosTicket proxy

        Evidence ticket if proxy_impersonator. This field can be accessed by KerberosSecrets. It's serialized.

      - ##### renewTill

            Date renewTill

        For renewable Tickets it indicates the maximum endtime that may be included in a renewal. It can be thought of as the absolute expiration time for the ticket, including all renewals. This field may be null for tickets that are not renewable.

      - ##### server

            KerberosPrincipal server

        The service for which the ticket was issued.

      - ##### sessionKey

            javax.security.auth.kerberos.KeyImpl sessionKey

        `KeyImpl` is serialized by writing out the ASN1 Encoded bytes of the encryption key. The ASN1 encoding is defined in RFC4120 and as follows:

             EncryptionKey   ::= SEQUENCE {
                      keytype    [0] Int32 -- actually encryption type --,
                      keyvalue   [1] OCTET STRING
             }

      - ##### startTime

            Date startTime

        Time after which the ticket is valid.

  - ### Class javax.security.auth.kerberos.KeyImpl

    class KeyImpl extends Object implements Serializable
    serialVersionUID:
      -7889313790214321193L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
        Restores the state of this object from the stream.
        Parameters:
          `ois` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream oos) throws IOException
        Writes the state of this object to the stream.
        Serial Data:
          this `KeyImpl` is serialized by writing out the ASN.1 Encoded bytes of the encryption key. The ASN.1 encoding is defined in RFC4120 as follows: EncryptionKey ::= SEQUENCE { keytype [0] Int32 -- actually encryption type --, keyvalue [1] OCTET STRING
        Parameters:
          `oos` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs }

  - ### Class javax.security.auth.kerberos.ServicePermission

    class ServicePermission extends Permission implements Serializable
    serialVersionUID:
      -1227585031618624935L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the ServicePermission from a stream.
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        WriteObject is called to save the state of the ServicePermission to a stream. The actions are serialized, and the superclass takes care of the name.
        Parameters:
          `s` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

    - #### Serialized Fields

      - ##### actions

            String actions

        the actions string.

- ## Package javax.security.auth.login

  - ### Exception Class javax.security.auth.login.AccountException

    class AccountException extends LoginException implements Serializable
    serialVersionUID:
      -2112878680072211787L

  - ### Exception Class javax.security.auth.login.AccountExpiredException

    class AccountExpiredException extends AccountException implements Serializable
    serialVersionUID:
      -6064064890162661560L

  - ### Exception Class javax.security.auth.login.AccountLockedException

    class AccountLockedException extends AccountException implements Serializable
    serialVersionUID:
      8280345554014066334L

  - ### Exception Class javax.security.auth.login.AccountNotFoundException

    class AccountNotFoundException extends AccountException implements Serializable
    serialVersionUID:
      1498349563916294614L

  - ### Exception Class javax.security.auth.login.CredentialException

    class CredentialException extends LoginException implements Serializable
    serialVersionUID:
      -4772893876810601859L

  - ### Exception Class javax.security.auth.login.CredentialExpiredException

    class CredentialExpiredException extends CredentialException implements Serializable
    serialVersionUID:
      -5344739593859737937L

  - ### Exception Class javax.security.auth.login.CredentialNotFoundException

    class CredentialNotFoundException extends CredentialException implements Serializable
    serialVersionUID:
      -7779934467214319475L

  - ### Exception Class javax.security.auth.login.FailedLoginException

    class FailedLoginException extends LoginException implements Serializable
    serialVersionUID:
      802556922354616286L

  - ### Exception Class javax.security.auth.login.LoginException

    class LoginException extends GeneralSecurityException implements Serializable
    serialVersionUID:
      -4679091624035232488L

- ## Package javax.security.auth.x500

  - ### Class javax.security.auth.x500.X500Principal

    class X500Principal extends Object implements Serializable
    serialVersionUID:
      -500463348111345721L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, NotActiveException, ClassNotFoundException
        Reads this object from a stream (i.e., deserializes it).
        Parameters:
          `s` - the `ObjectInputStream` from which data is read
        Throws:
          `IOException` - if an I/O error occurs
          `NotActiveException` - if serialization is not active
          `ClassNotFoundException` - if a serialized class cannot be loaded

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Save the X500Principal object to a stream.
        Serial Data:
          this `X500Principal` is serialized by writing out its DER-encoded form (the value of `getEncoded` is serialized).
        Parameters:
          `s` - the `ObjectOutputStream` to which data is written
        Throws:
          `IOException` - if an I/O error occurs

- ## Package javax.security.cert

  - ### Exception Class javax.security.cert.CertificateEncodingException

    class CertificateEncodingException extends CertificateException implements Serializable
    serialVersionUID:
      -8187642723048403470L

  - ### Exception Class javax.security.cert.CertificateException

    class CertificateException extends Exception implements Serializable
    serialVersionUID:
      -5757213374030785290L

  - ### Exception Class javax.security.cert.CertificateExpiredException

    class CertificateExpiredException extends CertificateException implements Serializable
    serialVersionUID:
      5091601212177261883L

  - ### Exception Class javax.security.cert.CertificateNotYetValidException

    class CertificateNotYetValidException extends CertificateException implements Serializable
    serialVersionUID:
      -8976172474266822818L

  - ### Exception Class javax.security.cert.CertificateParsingException

    class CertificateParsingException extends CertificateException implements Serializable
    serialVersionUID:
      -8449352422951136229L

- ## Package javax.security.sasl

  - ### Exception Class javax.security.sasl.AuthenticationException

    class AuthenticationException extends SaslException implements Serializable
    serialVersionUID:
      -3579708765071815007L

  - ### Class javax.security.sasl.AuthorizeCallback

    class AuthorizeCallback extends Object implements Serializable
    serialVersionUID:
      -2353344186490470805L

    - #### Serialized Fields

      - ##### authenticationID

            String authenticationID

        The (authenticated) authentication id to check.

      - ##### authorizationID

            String authorizationID

        The authorization id to check.

      - ##### authorized

            boolean authorized

        A flag indicating whether the authentication id is allowed to act on behalf of the authorization id.

      - ##### authorizedID

            String authorizedID

        The id of the authorized entity. If null, the id of the authorized entity is authorizationID.

  - ### Class javax.security.sasl.RealmCallback

    class RealmCallback extends TextInputCallback implements Serializable
    serialVersionUID:
      -4342673378785456908L

  - ### Class javax.security.sasl.RealmChoiceCallback

    class RealmChoiceCallback extends ChoiceCallback implements Serializable
    serialVersionUID:
      -8588141348846281332L

  - ### Exception Class javax.security.sasl.SaslException

    class SaslException extends IOException implements Serializable
    serialVersionUID:
      4579784287983423626L

    - #### Serialized Fields

      - ##### _exception

            Throwable _exception

        The possibly null root cause exception.

- ## Package javax.smartcardio

  - ### Class javax.smartcardio.ATR

    class ATR extends Object implements Serializable
    serialVersionUID:
      6695383790847736493L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### atr

            byte[] atr

  - ### Exception Class javax.smartcardio.CardException

    class CardException extends Exception implements Serializable
    serialVersionUID:
      7787607144922050628L

  - ### Exception Class javax.smartcardio.CardNotPresentException

    class CardNotPresentException extends CardException implements Serializable
    serialVersionUID:
      1346879911706545215L

  - ### Class javax.smartcardio.CardPermission

    class CardPermission extends Permission implements Serializable
    serialVersionUID:
      7146787880530705613L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        Throws:
          `IOException`

    - #### Serialized Fields

      - ##### actions

            String actions

  - ### Class javax.smartcardio.CommandAPDU

    class CommandAPDU extends Object implements Serializable
    serialVersionUID:
      398698301286670877L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### apdu

            byte[] apdu

  - ### Class javax.smartcardio.ResponseAPDU

    class ResponseAPDU extends Object implements Serializable
    serialVersionUID:
      6962744978375594225L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Throws:
          `IOException`
          `ClassNotFoundException`

    - #### Serialized Fields

      - ##### apdu

            byte[] apdu

- ## Package javax.sound.midi

  - ### Exception Class javax.sound.midi.InvalidMidiDataException

    class InvalidMidiDataException extends Exception implements Serializable
    serialVersionUID:
      2780771756789932067L

  - ### Exception Class javax.sound.midi.MidiUnavailableException

    class MidiUnavailableException extends Exception implements Serializable
    serialVersionUID:
      6093809578628944323L

- ## Package javax.sound.sampled

  - ### Class javax.sound.sampled.AudioPermission

    class AudioPermission extends BasicPermission implements Serializable
    serialVersionUID:
      -5518053473477801126L

  - ### Exception Class javax.sound.sampled.LineUnavailableException

    class LineUnavailableException extends Exception implements Serializable
    serialVersionUID:
      -2046718279487432130L

  - ### Exception Class javax.sound.sampled.UnsupportedAudioFileException

    class UnsupportedAudioFileException extends Exception implements Serializable
    serialVersionUID:
      -139127412623160368L

- ## Package javax.sql

  - ### Class javax.sql.ConnectionEvent

    class ConnectionEvent extends EventObject implements Serializable
    serialVersionUID:
      -4843217645290030002L

    - #### Serialized Fields

      - ##### ex

            SQLException ex

        The `SQLException` that the driver will throw to the application when an error occurs and the pooled connection is no longer usable.

  - ### Class javax.sql.RowSetEvent

    class RowSetEvent extends EventObject implements Serializable
    serialVersionUID:
      -1875450876546332005L

  - ### Class javax.sql.StatementEvent

    class StatementEvent extends EventObject implements Serializable
    serialVersionUID:
      -8089573731826608315L

    - #### Serialized Fields

      - ##### exception

            SQLException exception

        The `SQLException` the driver is about to throw to the application.

      - ##### statement

            PreparedStatement statement

        The `PreparedStatement` that is being closed or is invalid.

- ## Package javax.sql.rowset

  - ### Class javax.sql.rowset.BaseRowSet

    class BaseRowSet extends Object implements Serializable
    serialVersionUID:
      4886719666485113312L

    - #### Serialized Fields

      - ##### asciiStream

            InputStream asciiStream

        The `InputStream` object that will be returned by the method `getAsciiStream`, which is specified in the `ResultSet` interface.

      - ##### binaryStream

            InputStream binaryStream

        The `InputStream` object that will be returned by the method `getBinaryStream`, which is specified in the `ResultSet` interface.

      - ##### charStream

            Reader charStream

        The `Reader` object that will be returned by the method `getCharacterStream`, which is specified in the `ResultSet` interface.

      - ##### command

            String command

        The query that will be sent to the DBMS for execution when the method `execute` is called.

      - ##### concurrency

            int concurrency

        A constant indicating the concurrency of this JDBC `RowSet` object. It must be one of the following `ResultSet` constants: `CONCUR_READ_ONLY` or `CONCUR_UPDATABLE`.

      - ##### dataSource

            String dataSource

        The logical name of the data source that the reader/writer should use in order to retrieve a `DataSource` object from a Java Directory and Naming Interface (JNDI) naming service.

      - ##### escapeProcessing

            boolean escapeProcessing

        A `boolean` indicating whether the reader for this JDBC `RowSet` object should perform escape processing. `true` means that escape processing is turned on; `false` that it is not. The default is `true`.

      - ##### fetchDir

            int fetchDir

        A constant used as a hint to the driver that indicates the direction in which data from this JDBC `RowSet` object is going to be fetched. The following `ResultSet` constants are possible values: `FETCH_FORWARD`, `FETCH_REVERSE`, `FETCH_UNKNOWN`.

        Unused at this time.

      - ##### fetchSize

            int fetchSize

        A hint to the driver that indicates the expected number of rows in this JDBC `RowSet` object .

        Unused at this time.

      - ##### isolation

            int isolation

        A constant indicating the isolation level of the connection for this JDBC `RowSet` object . It must be one of the following `Connection` constants: `TRANSACTION_NONE`, `TRANSACTION_READ_UNCOMMITTED`, `TRANSACTION_READ_COMMITTED`, `TRANSACTION_REPEATABLE_READ` or `TRANSACTION_SERIALIZABLE`.

      - ##### listeners

            Vector<RowSetListener> listeners

        A `Vector` object that holds the list of listeners that have registered with this `RowSet` object.

      - ##### map

            Map<String,Class<?>> map

        The `java.util.Map` object that contains entries mapping SQL type names to classes in the Java programming language for the custom mapping of user-defined types.

      - ##### maxFieldSize

            int maxFieldSize

        The maximum field size the reader should read.

      - ##### maxRows

            int maxRows

        The maximum number of rows the reader should read.

      - ##### params

            Hashtable<Integer,Object> params

        A `Vector` object that holds the parameters set for this `RowSet` object's current command.

      - ##### queryTimeout

            int queryTimeout

        The maximum number of seconds the driver will wait for a command to execute. This limit applies while this JDBC `RowSet` object is connected to its data source, that is, while it is populating itself with data and while it is writing data back to the data source.

      - ##### readOnly

            boolean readOnly

        A `boolean` indicating whether this JDBC `RowSet` object is read-only. `true` indicates that it is read-only; `false` that it is writable.

      - ##### rowSetType

            int rowSetType

        A constant indicating the type of this JDBC `RowSet` object. It must be one of the following `ResultSet` constants: `TYPE_FORWARD_ONLY`, `TYPE_SCROLL_INSENSITIVE`, or `TYPE_SCROLL_SENSITIVE`.

      - ##### showDeleted

            boolean showDeleted

        A `boolean` indicating whether deleted rows are visible in this JDBC `RowSet` object .

      - ##### unicodeStream

            InputStream unicodeStream

        The `InputStream` object that will be returned by the method `getUnicodeStream`, which is specified in the `ResultSet` interface.

      - ##### URL

            String URL

        The JDBC URL the reader, writer, or both supply to the method `DriverManager.getConnection` when the `DriverManager` is used to get a connection.

        The JDBC URL identifies the driver to be used to make the connection. This URL can be found in the documentation supplied by the driver vendor.

  - ### Class javax.sql.rowset.RowSetMetaDataImpl

    class RowSetMetaDataImpl extends Object implements Serializable
    serialVersionUID:
      6893806403181801867L

    - #### Serialized Fields

      - ##### colCount

            int colCount

        The number of columns in the `RowSet` object that created this `RowSetMetaDataImpl` object.

      - ##### colInfo

            javax.sql.rowset.RowSetMetaDataImpl.ColInfo[] colInfo

        An array of `ColInfo` objects used to store information about each column in the `RowSet` object for which this `RowSetMetaDataImpl` object was created. The first `ColInfo` object in this array contains information about the first column in the `RowSet` object, the second element contains information about the second column, and so on.

  - ### Exception Class javax.sql.rowset.RowSetWarning

    class RowSetWarning extends SQLException implements Serializable
    serialVersionUID:
      6678332766434564774L

- ## Package javax.sql.rowset.serial

  - ### Class javax.sql.rowset.serial.SerialArray

    class SerialArray extends Object implements Serializable
    serialVersionUID:
      -8466174297270688520L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the `SerialArray` from a stream.
        Parameters:
          `s` - the `ObjectInputStream` to read from.
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found.
          `IOException` - if an I/O error occurs.

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        writeObject is called to save the state of the `SerialArray` to a stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write to.
        Throws:
          `IOException` - if an I/O error occurs.

    - #### Serialized Fields

      - ##### baseType

            int baseType

        The SQL type of the elements in this `SerialArray` object. The type is expressed as one of the constants from the class `java.sql.Types`.

      - ##### baseTypeName

            String baseTypeName

        The type name used by the DBMS for the elements in the SQL `ARRAY` value that this `SerialArray` object represents.

      - ##### elements

            Object[] elements

        A serialized array in which each element is an `Object` in the Java programming language that represents an element in the SQL `ARRAY` value.

      - ##### len

            int len

        The number of elements in this `SerialArray` object, which is also the number of elements in the SQL `ARRAY` value that this `SerialArray` object represents.

  - ### Class javax.sql.rowset.serial.SerialBlob

    class SerialBlob extends Object implements Serializable
    serialVersionUID:
      -8144641928112860441L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the SerialBlob from a stream.
        Parameters:
          `s` - the `ObjectInputStream` to read from.
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found.
          `IOException` - if an I/O error occurs.

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        writeObject is called to save the state of the SerialBlob to a stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write to.
        Throws:
          `IOException` - if an I/O error occurs.

    - #### Serialized Fields

      - ##### blob

            Blob blob

        The internal representation of the `Blob` object on which this `SerialBlob` object is based.

      - ##### buf

            byte[] buf

        A serialized array of uninterpreted bytes representing the value of this `SerialBlob` object.

      - ##### len

            long len

        The number of bytes in this `SerialBlob` object's array of bytes.

      - ##### origLen

            long origLen

        The original number of bytes in this `SerialBlob` object's array of bytes when it was first established.

  - ### Class javax.sql.rowset.serial.SerialClob

    class SerialClob extends Object implements Serializable
    serialVersionUID:
      -1662519690087375313L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the SerialClob from a stream.
        Parameters:
          `s` - the `ObjectInputStream` to read from.
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found.
          `IOException` - if an I/O error occurs.

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        writeObject is called to save the state of the SerialClob to a stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write to.
        Throws:
          `IOException` - if an I/O error occurs.

    - #### Serialized Fields

      - ##### buf

            char[] buf

        A serialized array of characters containing the data of the SQL `CLOB` value that this `SerialClob` object represents.

      - ##### clob

            Clob clob

        Internal Clob representation if SerialClob is initialized with a Clob. Null if SerialClob is initialized with a char[].

      - ##### len

            long len

        The length in characters of this `SerialClob` object's internal array of characters.

      - ##### origLen

            long origLen

        The original length in characters of this `SerialClob` object's internal array of characters.

  - ### Class javax.sql.rowset.serial.SerialDatalink

    class SerialDatalink extends Object implements Serializable
    serialVersionUID:
      2826907821828733626L

    - #### Serialized Fields

      - ##### baseType

            int baseType

        The SQL type of the elements in this `SerialDatalink` object. The type is expressed as one of the constants from the class `java.sql.Types`.

      - ##### baseTypeName

            String baseTypeName

        The type name used by the DBMS for the elements in the SQL `DATALINK` value that this SerialDatalink object represents.

      - ##### url

            URL url

        The extracted URL field retrieved from the DATALINK field.

  - ### Exception Class javax.sql.rowset.serial.SerialException

    class SerialException extends SQLException implements Serializable
    serialVersionUID:
      -489794565168592690L

  - ### Class javax.sql.rowset.serial.SerialJavaObject

    class SerialJavaObject extends Object implements Serializable
    serialVersionUID:
      -1465795139032831023L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the `SerialJavaObject` from a stream.
        Parameters:
          `s` - the `ObjectInputStream` to read from.
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found.
          `IOException` - if an I/O error occurs.

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        writeObject is called to save the state of the `SerialJavaObject` to a stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write to.
        Throws:
          `IOException` - if an I/O error occurs.

    - #### Serialized Fields

      - ##### chain

            Vector<RowSetWarning> chain

        A container for the warnings issued on this `SerialJavaObject` object. When there are multiple warnings, each warning is chained to the previous warning.

      - ##### obj

            Object obj

        Placeholder for object to be serialized.

  - ### Class javax.sql.rowset.serial.SerialRef

    class SerialRef extends Object implements Serializable
    serialVersionUID:
      -4727123500609662274L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the SerialRef from a stream.
        Parameters:
          `s` - the `ObjectInputStream` to read from.
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found.
          `IOException` - if an I/O error occurs.

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        writeObject is called to save the state of the SerialRef to a stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write to.
        Throws:
          `IOException` - if an I/O error occurs.

    - #### Serialized Fields

      - ##### baseTypeName

            String baseTypeName

        String containing the base type name.

      - ##### object

            Object object

        This will store the type `Ref` as an `Object`.

      - ##### reference

            Ref reference

        Private copy of the Ref reference.

  - ### Class javax.sql.rowset.serial.SerialStruct

    class SerialStruct extends Object implements Serializable
    serialVersionUID:
      -8322445504027483372L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException
        readObject is called to restore the state of the `SerialStruct` from a stream.
        Parameters:
          `s` - the `ObjectInputStream` to read from.
        Throws:
          `ClassNotFoundException` - if the class of a serialized object could not be found.
          `IOException` - if an I/O error occurs.

      - ##### writeObject

        private void writeObject(ObjectOutputStream s) throws IOException
        writeObject is called to save the state of the `SerialStruct` to a stream.
        Parameters:
          `s` - the `ObjectOutputStream` to write to.
        Throws:
          `IOException` - if an I/O error occurs.

    - #### Serialized Fields

      - ##### attribs

            Object[] attribs

        An array of `Object` instances in which each element is an attribute of the SQL structured type that this `SerialStruct` object represents. The attributes are ordered according to their order in the definition of the SQL structured type.

      - ##### SQLTypeName

            String SQLTypeName

        The SQL type name for the structured type that this `SerialStruct` object represents. This is the name used in the SQL definition of the SQL structured type.

- ## Package javax.sql.rowset.spi

  - ### Exception Class javax.sql.rowset.spi.SyncFactoryException

    class SyncFactoryException extends SQLException implements Serializable
    serialVersionUID:
      -4354595476433200352L

  - ### Exception Class javax.sql.rowset.spi.SyncProviderException

    class SyncProviderException extends SQLException implements Serializable
    serialVersionUID:
      -939908523620640692L

    - #### Serialized Fields

      - ##### syncResolver

            SyncResolver syncResolver

        The instance of `javax.sql.rowset.spi.SyncResolver` that this `SyncProviderException` object will return when its `getSyncResolver` method is called.

- ## Package javax.transaction.xa

  - ### Exception Class javax.transaction.xa.XAException

    class XAException extends Exception implements Serializable
    serialVersionUID:
      -8249683284832867751L

    - #### Serialized Fields

      - ##### errorCode

            int errorCode

        The error code with which to create the SystemException.
        The error code for the exception

- ## Package javax.xml.catalog

  - ### Exception Class javax.xml.catalog.CatalogException

    class CatalogException extends RuntimeException implements Serializable
    serialVersionUID:
      653231525876459057L

- ## Package javax.xml.crypto

  - ### Exception Class javax.xml.crypto.KeySelectorException

    class KeySelectorException extends Exception implements Serializable
    serialVersionUID:
      -7480033639322531109L

    - #### Serialized Fields

      - ##### cause

            Throwable cause

        The throwable that caused this exception to get thrown, or `null` if this exception was not caused by another throwable or if the causative throwable is unknown.

  - ### Exception Class javax.xml.crypto.MarshalException

    class MarshalException extends Exception implements Serializable
    serialVersionUID:
      -863185580332643547L

    - #### Serialized Fields

      - ##### cause

            Throwable cause

        The throwable that caused this exception to get thrown, or null if this exception was not caused by another throwable or if the causative throwable is unknown.

  - ### Exception Class javax.xml.crypto.NoSuchMechanismException

    class NoSuchMechanismException extends RuntimeException implements Serializable
    serialVersionUID:
      4189669069570660166L

    - #### Serialized Fields

      - ##### cause

            Throwable cause

        The throwable that caused this exception to get thrown, or null if this exception was not caused by another throwable or if the causative throwable is unknown.

  - ### Exception Class javax.xml.crypto.URIReferenceException

    class URIReferenceException extends Exception implements Serializable
    serialVersionUID:
      7173469703932561419L

    - #### Serialized Fields

      - ##### cause

            Throwable cause

        The throwable that caused this exception to get thrown, or null if this exception was not caused by another throwable or if the causative throwable is unknown.

      - ##### uriReference

            URIReference uriReference

        The `URIReference` that was being dereferenced when the exception was thrown, or `null` if not specified.

- ## Package javax.xml.crypto.dsig

  - ### Exception Class javax.xml.crypto.dsig.TransformException

    class TransformException extends Exception implements Serializable
    serialVersionUID:
      5082634801360427800L

    - #### Serialized Fields

      - ##### cause

            Throwable cause

        The throwable that caused this exception to get thrown, or null if this exception was not caused by another throwable or if the causative throwable is unknown.

  - ### Exception Class javax.xml.crypto.dsig.XMLSignatureException

    class XMLSignatureException extends Exception implements Serializable
    serialVersionUID:
      -3438102491013869995L

    - #### Serialized Fields

      - ##### cause

            Throwable cause

        The throwable that caused this exception to get thrown, or null if this exception was not caused by another throwable or if the causative throwable is unknown.

- ## Package javax.xml.datatype

  - ### Exception Class javax.xml.datatype.DatatypeConfigurationException

    class DatatypeConfigurationException extends Exception implements Serializable
    serialVersionUID:
      -1699373159027047238L

- ## Package javax.xml.namespace

  - ### Class javax.xml.namespace.QName

    class QName extends Object implements Serializable
    serialVersionUID:
      -9120448754896609940L

    - #### Serialized Fields

      - ##### localPart

            String localPart

        local part of this `QName`.

      - ##### namespaceURI

            String namespaceURI

        Namespace URI of this `QName`.

      - ##### prefix

            String prefix

        prefix of this `QName`.

- ## Package javax.xml.parsers

  - ### Exception Class javax.xml.parsers.FactoryConfigurationError

    class FactoryConfigurationError extends Error implements Serializable
    serialVersionUID:
      -827108682472263355L

    - #### Serialized Fields

      - ##### exception

            Exception exception

        `Exception` that represents the error.

  - ### Exception Class javax.xml.parsers.ParserConfigurationException

    class ParserConfigurationException extends Exception implements Serializable
    serialVersionUID:
      -3688849216575373917L

- ## Package javax.xml.stream

  - ### Exception Class javax.xml.stream.FactoryConfigurationError

    class FactoryConfigurationError extends Error implements Serializable
    serialVersionUID:
      -2994412584589975744L

    - #### Serialized Fields

      - ##### nested

            Exception nested

        The nested exception.

  - ### Exception Class javax.xml.stream.XMLStreamException

    class XMLStreamException extends Exception implements Serializable
    serialVersionUID:
      2018819321811497362L

    - #### Serialized Fields

      - ##### location

            Location location

        The location of the error.

      - ##### nested

            Throwable nested

        The nested exception.

- ## Package javax.xml.transform

  - ### Exception Class javax.xml.transform.TransformerConfigurationException

    class TransformerConfigurationException extends TransformerException implements Serializable
    serialVersionUID:
      1285547467942875745L

  - ### Exception Class javax.xml.transform.TransformerException

    class TransformerException extends Exception implements Serializable
    serialVersionUID:
      975798773772956428L

    - #### Serialized Fields

      - ##### containedException

            Throwable containedException

        Field containedException specifies a wrapped exception. May be null.

      - ##### locator

            SourceLocator locator

        Field locator specifies where the error occurred

  - ### Exception Class javax.xml.transform.TransformerFactoryConfigurationError

    class TransformerFactoryConfigurationError extends Error implements Serializable
    serialVersionUID:
      -6527718720676281516L

    - #### Serialized Fields

      - ##### exception

            Exception exception

        `Exception` for the `TransformerFactoryConfigurationError`.

- ## Package javax.xml.validation

  - ### Exception Class javax.xml.validation.SchemaFactoryConfigurationError

    class SchemaFactoryConfigurationError extends Error implements Serializable
    serialVersionUID:
      3531438703147750126L

- ## Package javax.xml.xpath

  - ### Exception Class javax.xml.xpath.XPathException

    class XPathException extends Exception implements Serializable
    serialVersionUID:
      -1837080260374986980L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Reads the "cause" field from the stream. And initializes the "cause" if it wasn't done before.
        Parameters:
          `in` - stream used for deserialization
        Throws:
          `IOException` - thrown by `ObjectInputStream`
          `ClassNotFoundException` - thrown by `ObjectInputStream`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Writes "cause" field to the stream. The cause is got from the parent class.
        Parameters:
          `out` - stream used for serialization.
        Throws:
          `IOException` - thrown by `ObjectOutputStream`

    - #### Serialization Overview

      - Serializable fields.

    - #### Serialized Fields

  - ### Exception Class javax.xml.xpath.XPathExpressionException

    class XPathExpressionException extends XPathException implements Serializable
    serialVersionUID:
      -1837080260374986980L

  - ### Exception Class javax.xml.xpath.XPathFactoryConfigurationException

    class XPathFactoryConfigurationException extends XPathException implements Serializable
    serialVersionUID:
      -1837080260374986980L

  - ### Exception Class javax.xml.xpath.XPathFunctionException

    class XPathFunctionException extends XPathExpressionException implements Serializable
    serialVersionUID:
      -1837080260374986980L

- ## Package jdk.dynalink

  - ### Exception Class jdk.dynalink.NoSuchDynamicMethodException

    class NoSuchDynamicMethodException extends RuntimeException implements Serializable
    serialVersionUID:
      1L

- ## Package jdk.dynalink.beans

  - ### Class jdk.dynalink.beans.StaticClass

    class StaticClass extends Object implements Serializable
    serialVersionUID:
      1L

    - #### Serialization Methods

      - ##### readResolve

        private Object readResolve()
        Returns `StaticClass.forClass(Class)` for the underlying `clazz` field ensuring that deserialization doesn't create non-canonical instances.

    - #### Serialized Fields

      - ##### clazz

            Class<?> clazz

        The runtime `Class` object whose static members this `StaticClass` represents.

- ## Package jdk.incubator.concurrent

  - ### Exception Class jdk.incubator.concurrent.StructureViolationException

    class StructureViolationException extends RuntimeException implements Serializable
    serialVersionUID:
      -7705327650798235468L

- ## Package jdk.jfr

  - ### Class jdk.jfr.FlightRecorderPermission

    class FlightRecorderPermission extends BasicPermission implements Serializable

- ## Package jdk.jshell

  - ### Exception Class jdk.jshell.EvalException

    class EvalException extends JShellException implements Serializable

    - #### Serialized Fields

      - ##### exceptionClass

            String exceptionClass

  - ### Exception Class jdk.jshell.JShellException

    class JShellException extends Exception implements Serializable

  - ### Exception Class jdk.jshell.UnresolvedReferenceException

    class UnresolvedReferenceException extends JShellException implements Serializable

    - #### Serialized Fields

      - ##### snippet

            DeclarationSnippet snippet

- ## Package jdk.jshell.spi

  - ### Class jdk.jshell.spi.ExecutionControl.ClassBytecodes

    class ClassBytecodes extends Object implements Serializable
    serialVersionUID:
      54506481972415973L

    - #### Serialized Fields

      - ##### bytecodes

            byte[] bytecodes

      - ##### name

            String name

  - ### Exception Class jdk.jshell.spi.ExecutionControl.ClassInstallException

    class ClassInstallException extends ExecutionControl.ExecutionControlException implements Serializable
    serialVersionUID:
      1L

    - #### Serialized Fields

      - ##### installed

            boolean[] installed

  - ### Exception Class jdk.jshell.spi.ExecutionControl.EngineTerminationException

    class EngineTerminationException extends ExecutionControl.ExecutionControlException implements Serializable
    serialVersionUID:
      1L

  - ### Exception Class jdk.jshell.spi.ExecutionControl.ExecutionControlException

    class ExecutionControlException extends Exception implements Serializable
    serialVersionUID:
      1L

  - ### Exception Class jdk.jshell.spi.ExecutionControl.InternalException

    class InternalException extends ExecutionControl.ExecutionControlException implements Serializable
    serialVersionUID:
      1L

  - ### Exception Class jdk.jshell.spi.ExecutionControl.NotImplementedException

    class NotImplementedException extends ExecutionControl.InternalException implements Serializable
    serialVersionUID:
      1L

  - ### Exception Class jdk.jshell.spi.ExecutionControl.ResolutionException

    class ResolutionException extends ExecutionControl.RunException implements Serializable
    serialVersionUID:
      1L

    - #### Serialized Fields

      - ##### id

            int id

  - ### Exception Class jdk.jshell.spi.ExecutionControl.RunException

    class RunException extends ExecutionControl.ExecutionControlException implements Serializable
    serialVersionUID:
      1L

  - ### Exception Class jdk.jshell.spi.ExecutionControl.StoppedException

    class StoppedException extends ExecutionControl.RunException implements Serializable
    serialVersionUID:
      1L

  - ### Exception Class jdk.jshell.spi.ExecutionControl.UserException

    class UserException extends ExecutionControl.RunException implements Serializable
    serialVersionUID:
      1L

    - #### Serialized Fields

      - ##### causeExceptionClass

            String causeExceptionClass

  - ### Exception Class jdk.jshell.spi.SPIResolutionException

    class SPIResolutionException extends RuntimeException implements Serializable

    - #### Serialized Fields

      - ##### id

            int id

- ## Package jdk.net

  - ### Class jdk.net.NetworkPermission

    class NetworkPermission extends BasicPermission implements Serializable
    serialVersionUID:
      -2012939586906722291L

- ## Package jdk.security.jarsigner

  - ### Exception Class jdk.security.jarsigner.JarSignerException

    class JarSignerException extends RuntimeException implements Serializable
    serialVersionUID:
      -4732217075689309530L

- ## Package netscape.javascript

  - ### Exception Class netscape.javascript.JSException

    class JSException extends RuntimeException implements Serializable
    serialVersionUID:
      2778103758223661489L

- ## Package org.ietf.jgss

  - ### Exception Class org.ietf.jgss.GSSException

    class GSSException extends Exception implements Serializable
    serialVersionUID:
      -2706218945227726672L

    - #### Serialized Fields

      - ##### major

            int major

        The major code for this exception

      - ##### majorString

            String majorString

        Alternate text string for major code

      - ##### minor

            int minor

        The minor code for this exception

      - ##### minorMessage

            String minorMessage

        The text string for minor code

- ## Package org.w3c.dom

  - ### Exception Class org.w3c.dom.DOMException

    class DOMException extends RuntimeException implements Serializable
    serialVersionUID:
      6627732366795969916L

    - #### Serialized Fields

      - ##### code

            short code

- ## Package org.w3c.dom.events

  - ### Exception Class org.w3c.dom.events.EventException

    class EventException extends RuntimeException implements Serializable
    serialVersionUID:
      242753408332692061L

    - #### Serialized Fields

      - ##### code

            short code

- ## Package org.w3c.dom.ls

  - ### Exception Class org.w3c.dom.ls.LSException

    class LSException extends RuntimeException implements Serializable
    serialVersionUID:
      5371691160978884690L

    - #### Serialized Fields

      - ##### code

            short code

- ## Package org.w3c.dom.ranges

  - ### Exception Class org.w3c.dom.ranges.RangeException

    class RangeException extends RuntimeException implements Serializable
    serialVersionUID:
      2427563372446661889L

    - #### Serialized Fields

      - ##### code

            short code

- ## Package org.w3c.dom.xpath

  - ### Exception Class org.w3c.dom.xpath.XPathException

    class XPathException extends RuntimeException implements Serializable
    serialVersionUID:
      3471034171575979943L

    - #### Serialized Fields

      - ##### code

            short code

- ## Package org.xml.sax

  - ### Exception Class org.xml.sax.SAXException

    class SAXException extends Exception implements Serializable
    serialVersionUID:
      583241635256073760L

    - #### Serialization Methods

      - ##### readObject

        private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
        Reads the "exception" field from the stream. And initializes the "exception" if it wasn't done before.
        Parameters:
          `in` - stream used for deserialization
        Throws:
          `IOException` - thrown by `ObjectInputStream`
          `ClassNotFoundException` - thrown by `ObjectInputStream`

      - ##### writeObject

        private void writeObject(ObjectOutputStream out) throws IOException
        Writes "exception" field to the stream.
        Parameters:
          `out` - stream used for serialization.
        Throws:
          `IOException` - thrown by `ObjectOutputStream`

    - #### Serialization Overview

      - serializable fields

    - #### Serialized Fields

  - ### Exception Class org.xml.sax.SAXNotRecognizedException

    class SAXNotRecognizedException extends SAXException implements Serializable
    serialVersionUID:
      5440506620509557213L

  - ### Exception Class org.xml.sax.SAXNotSupportedException

    class SAXNotSupportedException extends SAXException implements Serializable
    serialVersionUID:
      -1422818934641823846L

  - ### Exception Class org.xml.sax.SAXParseException

    class SAXParseException extends SAXException implements Serializable
    serialVersionUID:
      -5651165872476709336L

    - #### Serialized Fields

      - ##### columnNumber

            int columnNumber

        The column number, or -1.
        See Also:
          - `SAXParseException.getColumnNumber()`

      - ##### lineNumber

            int lineNumber

        The line number, or -1.
        See Also:
          - `SAXParseException.getLineNumber()`

      - ##### publicId

            String publicId

        The public identifier, or null.
        See Also:
          - `SAXParseException.getPublicId()`

      - ##### systemId

            String systemId

        The system identifier, or null.
        See Also:
          - `SAXParseException.getSystemId()`