# Serialized Form

## Package java.applet

### Class java.applet.Applet extends Panel implements Serializable

serialVersionUID:
  -5836846270535785031L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws ClassNotFoundException,
                            IOException,
                            HeadlessException

Read an applet from an object input stream.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
  `ClassNotFoundException`
  `IOException`
Since:
  1.4
See Also:
  `GraphicsEnvironment.isHeadless()`

### Serialized Fields

#### accessibleContext

    AccessibleContext accessibleContext

### Class java.applet.Applet.AccessibleApplet extends Panel.AccessibleAWTPanel implements Serializable

serialVersionUID:
  8127374778187708896L

## Package java.awt

### Class java.awt.AWTError extends Error implements Serializable

serialVersionUID:
  -1819846354050686206L

### Class java.awt.AWTEvent extends EventObject implements Serializable

serialVersionUID:
  -1825314779160409405L

### Serialized Fields

#### bdata

    byte[] bdata

#### id

    int id

The event's id.

See Also:
  `AWTEvent.getID()`, `AWTEvent.AWTEvent(java.lang.Object, int)`

#### 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()`

### Class java.awt.AWTException extends Exception implements Serializable

serialVersionUID:
  -1900414231151323879L

### Class java.awt.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`

### Serialized Fields

#### keyChar

    char keyChar

#### keyCode

    int keyCode

#### modifiers

    int modifiers

#### onKeyRelease

    boolean onKeyRelease

### Class java.awt.AWTPermission extends BasicPermission implements Serializable

serialVersionUID:
  8890392402588814465L

### Class java.awt.BorderLayout extends Object implements Serializable

serialVersionUID:
  -8658291919501921765L

### Serialized Fields

#### 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)`

#### 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)`

#### 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)`

#### 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)`

#### 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)`

#### 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)`

#### 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)`

#### 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 layed out. This will be the same for lastLine, firstItem, lastItem.

#### lastLine

    Component lastLine

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

#### firstItem

    Component firstItem

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

#### lastItem

    Component lastItem

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

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless` returns `true`
  `ClassNotFoundException`
  `IOException`
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
Throws:
  `IOException`
See Also:
  `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`, `Component.actionListenerK`, `Button.readObject(ObjectInputStream)`

### Serialized Fields

#### label

    String label

The button's label. This value may be null.

See Also:
  `Button.getLabel()`, `Button.setLabel(String)`

#### 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

### Class java.awt.Button.AccessibleAWTButton extends Component.AccessibleAWTComponent implements Serializable

serialVersionUID:
  -5932203980244017102L

### Class java.awt.Canvas extends Component implements Serializable

serialVersionUID:
  -2284879212465893870L

### Class java.awt.Canvas.AccessibleAWTCanvas extends Component.AccessibleAWTComponent implements Serializable

serialVersionUID:
  -6325592262103146699L

### Class java.awt.CardLayout extends Object implements Serializable

serialVersionUID:
  -4328196481005934313L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws ClassNotFoundException,
                            IOException

Reads serializable fields from stream.

Throws:
  `ClassNotFoundException`
  `IOException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Writes serializable fields to stream.

Throws:
  `IOException`

### Serialized Fields

#### currentCard

    int currentCard

#### hgap

    int hgap

#### tab

    Hashtable<K,V> tab

deprectated, for forward compatibility only

#### vector

    Vector<E> vector

#### vgap

    int vgap

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless` returns `true`
  `ClassNotFoundException`
  `IOException`
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
Throws:
  `IOException`
See Also:
  `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`, `Component.itemListenerK`, `Checkbox.readObject(ObjectInputStream)`

### Serialized Fields

#### 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)`

#### 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)`

#### checkboxSerializedDataVersion

    int checkboxSerializedDataVersion

### Class java.awt.Checkbox.AccessibleAWTCheckbox extends Component.AccessibleAWTComponent implements Serializable

serialVersionUID:
  7881579233144754107L

### Class java.awt.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 extends MenuItem implements Serializable

serialVersionUID:
  6190621106981774043L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws ClassNotFoundException,
                            IOException

Throws:
  `ClassNotFoundException`
  `IOException`

#### 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
Throws:
  `IOException`
See Also:
  `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`, `Component.itemListenerK`, `CheckboxMenuItem.readObject(ObjectInputStream)`

### Serialized Fields

#### state

    boolean state

The state of a checkbox menu item

See Also:
  `CheckboxMenuItem.getState()`, `CheckboxMenuItem.setState(boolean)`

#### checkboxMenuItemSerializedDataVersion

    int checkboxMenuItemSerializedDataVersion

### Class java.awt.CheckboxMenuItem.AccessibleAWTCheckboxMenuItem extends MenuItem.AccessibleAWTMenuItem implements Serializable

serialVersionUID:
  -1122642964303476L

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless` returns `true`
  `ClassNotFoundException`
  `IOException`
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
Throws:
  `IOException`
See Also:
  `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`, `Component.itemListenerK`, `Choice.readObject(ObjectInputStream)`

### Serialized Fields

#### pItems

    Vector<E> 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)`

#### choiceSerializedDataVersion

    int choiceSerializedDataVersion

### Class java.awt.Choice.AccessibleAWTChoice extends Component.AccessibleAWTComponent implements Serializable

serialVersionUID:
  7175603582428509322L

### Class java.awt.Color extends Object implements Serializable

serialVersionUID:
  118526816881161077L

### Serialized Fields

#### value

    int value

The color value.

See Also:
  `Color.getRGB()`

#### 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[])`

#### 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[])`

#### 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[])`

### Class java.awt.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.

Throws:
  `ClassNotFoundException`
  `IOException`
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)
Throws:
  `IOException`
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

#### 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()`

#### width

    int width

The width of the component.

See Also:
  `Component.getSize()`

#### height

    int height

The height of the component.

See Also:
  `Component.getSize()`

#### foreground

    Color foreground

The foreground color for this component. `foreground` can be `null`.

See Also:
  `Component.getForeground()`, `Component.setForeground(java.awt.Color)`

#### background

    Color background

The background color for this component. `background` can be `null`.

See Also:
  `Component.getBackground()`, `Component.setBackground(java.awt.Color)`

#### font

    Font font

The font used by this component. The `font` can be `null`.

See Also:
  `Component.getFont()`, `Component.setFont(java.awt.Font)`

#### peerFont

    Font peerFont

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

#### 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)`

#### locale

    Locale locale

The locale for the component.

See Also:
  `Component.getLocale()`, `Component.setLocale(java.util.Locale)`

#### ignoreRepaint

    boolean ignoreRepaint

True when the object should ignore all repaint events.

Since:
  1.4
See Also:
  `Component.setIgnoreRepaint(boolean)`, `Component.getIgnoreRepaint()`

#### 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)`

#### 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)`

#### valid

    boolean valid

True when the object is valid. An invalid object needs to be layed out. This flag is set to false when the object size is changed.

See Also:
  `Component.isValid()`, `Component.validate()`, `Component.invalidate()`

#### dropTarget

    DropTarget dropTarget

The `DropTarget` associated with this component.

Since:
  1.2
See Also:
  `Component.setDropTarget(java.awt.dnd.DropTarget)`, `Component.getDropTarget()`

#### popups

    Vector<E> popups

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

#### 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)`

#### focusable

    boolean focusable

Indicates whether this Component can be focused.

Since:
  1.4
See Also:
  `Component.setFocusable(boolean)`, `Component.isFocusable()`

#### isFocusTraversableOverridden

    int isFocusTraversableOverridden

Tracks whether this Component is relying on default focus travesability.

Since:
  1.4

#### focusTraversalKeys

    Set<E>[] 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()`

#### 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.

#### 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.

#### maxSize

    Dimension maxSize

Maximum size

#### maxSizeSet

    boolean maxSizeSet

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

#### 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)`

#### 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`

#### 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)`

#### isPacked

    boolean isPacked

#### 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.

#### autoFocusTransferOnDisposal

    boolean autoFocusTransferOnDisposal

#### componentSerializedDataVersion

    int componentSerializedDataVersion

Component Serialized Data Version.

#### accessibleContext

    AccessibleContext accessibleContext

The `AccessibleContext` associated with this `Component`.

### Class java.awt.Component.AccessibleAWTComponent extends AccessibleContext implements Serializable

serialVersionUID:
  642321655757800191L

### Serialized Fields

#### accessibleAWTComponentHandler

    ComponentListener accessibleAWTComponentHandler

#### accessibleAWTFocusHandler

    FocusListener accessibleAWTFocusHandler

### Class java.awt.ComponentOrientation extends Object implements Serializable

serialVersionUID:
  -4113291392143563828L

### Serialized Fields

#### orientation

    int orientation

### Class java.awt.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.

Throws:
  `ClassNotFoundException`
  `IOException`
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 ContainerListner(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`
Throws:
  `IOException`
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 extends Component.AccessibleAWTComponent implements Serializable

serialVersionUID:
  5081320404842566097L

### Serialized Fields

#### accessibleContainerHandler

    ContainerListener accessibleContainerHandler

### Class java.awt.ContainerOrderFocusTraversalPolicy extends FocusTraversalPolicy implements Serializable

serialVersionUID:
  486933713763926351L

### Serialized Fields

#### FORWARD_TRAVERSAL

    int FORWARD_TRAVERSAL

#### BACKWARD_TRAVERSAL

    int BACKWARD_TRAVERSAL

#### implicitDownCycleTraversal

    boolean implicitDownCycleTraversal

### Class java.awt.Cursor extends Object implements Serializable

serialVersionUID:
  8028237497568985504L

### Serialized Fields

#### type

    int type

The chosen cursor type initially set to the `DEFAULT_CURSOR`.

See Also:
  `Cursor.getType()`

#### name

    String name

The user-visible name of the cursor.

See Also:
  `Cursor.getName()`

### Class java.awt.DefaultFocusTraversalPolicy extends ContainerOrderFocusTraversalPolicy implements Serializable

serialVersionUID:
  8876966522510157497L

### Class java.awt.Dialog extends Window implements Serializable

serialVersionUID:
  5920926903803293709L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws ClassNotFoundException,
                            IOException,
                            HeadlessException

Throws:
  `ClassNotFoundException`
  `IOException`
  `HeadlessException`

### Serialized Fields

#### 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)`

#### 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()`

#### 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)`

#### title

    String title

Specifies the title of the Dialog. This field can be null.

See Also:
  `Dialog.getTitle()`, `Dialog.setTitle(String)`

### Class java.awt.Dialog.AccessibleAWTDialog extends Window.AccessibleAWTWindow implements Serializable

serialVersionUID:
  4837230331833941201L

### Class java.awt.Dimension extends Dimension2D implements Serializable

serialVersionUID:
  4723952579491349524L

### Serialized Fields

#### width

    int width

The width dimension; negative values can be used.

Since:
  1.0
See Also:
  `Dimension.getSize()`, `Dimension.setSize(double, double)`

#### height

    int height

The height dimension; negative values can be used.

Since:
  1.0
See Also:
  `Dimension.getSize()`, `Dimension.setSize(double, double)`

### Class java.awt.Event extends Object implements Serializable

serialVersionUID:
  5488922509400504703L

### Serialized Fields

#### target

    Object target

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

The time stamp. Replaced by InputEvent.getWhen().

See Also:
  `InputEvent.getWhen()`

#### id

    int id

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()`

#### x

    int x

The x coordinate of the event. Replaced by MouseEvent.getX()

See Also:
  `MouseEvent.getX()`

#### y

    int y

The y coordinate of the event. Replaced by MouseEvent.getY()

See Also:
  `MouseEvent.getY()`

#### key

    int key

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

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()`

#### clickCount

    int clickCount

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()`

#### arg

    Object arg

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.

#### evt

    Event evt

The next event. This field is set when putting events into a linked list. This has been replaced by EventQueue.

See Also:
  `EventQueue`

#### consumed

    boolean consumed

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()`

### Class java.awt.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`.

Throws:
  `ClassNotFoundException`
  `IOException`

### Serialized Fields

#### mode

    int mode

#### dir

    String dir

#### file

    String file

#### files

    File[] files

Contains the File instances for all the files that the user selects.

Since:
  1.7
See Also:
  `FileDialog.getFiles()`

#### multipleMode

    boolean multipleMode

Represents whether the file dialog allows the multiple file selection.

Since:
  1.7
See Also:
  `FileDialog.setMultipleMode(boolean)`, `FileDialog.isMultipleMode()`

#### filter

    FilenameFilter filter

### Class java.awt.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..

Throws:
  `IOException`
  `ClassNotFoundException`

### 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)`

#### 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)`

#### hgap

    int hgap

The flow layout manager allows a seperation 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)`

#### vgap

    int vgap

The flow layout manager allows a seperation 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)`

#### alignOnBaseline

    boolean alignOnBaseline

If true, components will be aligned on their baseline.

#### 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

### Class java.awt.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.

Throws:
  `ClassNotFoundException`
  `IOException`
See Also:
  `Font.writeObject(java.io.ObjectOutputStream)`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws ClassNotFoundException,
                             IOException

Writes default serializable fields to a stream.

Throws:
  `ClassNotFoundException`
  `IOException`
See Also:
  `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`, `Font.readObject(java.io.ObjectInputStream)`

### Serialized Fields

#### fRequestedAttributes

    Hashtable<K,V> 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:
  JDK1.0
See Also:
  `Font.getName()`

#### style

    int style

The style of this `Font`, as passed to the constructor. This style can be PLAIN, BOLD, ITALIC, or BOLD+ITALIC.

Since:
  JDK1.0
See Also:
  `Font.getStyle()`

#### size

    int size

The point size of this `Font`, rounded to integer.

Since:
  JDK1.0
See Also:
  `Font.getSize()`

#### pointSize

    float pointSize

The point size of this `Font` in `float`.

See Also:
  `Font.getSize()`, `Font.getSize2D()`

#### fontSerializedDataVersion

    int fontSerializedDataVersion

The `Font` Serializable Data Form.

### Class java.awt.FontFormatException extends Exception implements Serializable

serialVersionUID:
  -4481290147811361272L

### Class java.awt.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 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.

Throws:
  `OptionalDataException` - if an icon `Image` is not available, but anything other than an EOF is detected
  `HeadlessException` - if `GraphicsEnvironment.isHeadless` returns `true`
  `ClassNotFoundException`
  `IOException`
See Also:
  `GraphicsEnvironment.isHeadless()`, `Image`, `Frame.getIconImage()`, `Frame.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`
Throws:
  `IOException`
See Also:
  `Image`, `Frame.getIconImage()`, `Frame.setIconImage(Image)`, `Frame.readObject(ObjectInputStream)`

### Serialized Fields

#### maximizedBounds

    Rectangle maximizedBounds

Maximized bounds for this frame.

Since:
  1.4
See Also:
  `Frame.setMaximizedBounds(Rectangle)`, `Frame.getMaximizedBounds()`

#### 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)`

#### menuBar

    MenuBar menuBar

The frames menubar. If `menuBar` = null the frame will not have a menubar.

See Also:
  `Frame.getMenuBar()`, `Frame.setMenuBar(MenuBar)`

#### 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()`

#### 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()`

#### mbManagement

    boolean mbManagement

`mbManagement` is only used by the Motif implementation.

#### state

    int state

#### ownedWindows

    Vector<E> ownedWindows

#### frameSerializedDataVersion

    int frameSerializedDataVersion

`Frame`'s Serialized Data Version.

### Class java.awt.Frame.AccessibleAWTFrame extends Window.AccessibleAWTWindow implements Serializable

serialVersionUID:
  -6172960752956030250L

### Class java.awt.GraphicsConfigTemplate extends Object implements Serializable

serialVersionUID:
  -8061369279557787079L

### Class java.awt.GridBagConstraints extends Object implements Serializable

serialVersionUID:
  -1000070633030801713L

### Serialized Fields

#### 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`

#### 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`

#### 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`

#### 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`

#### 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()`

#### 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`

#### tempX

    int tempX

Temporary place holder for the x coordinate.

#### tempY

    int tempY

Temporary place holder for the y coordinate.

#### tempWidth

    int tempWidth

Temporary place holder for the Width of the component.

#### tempHeight

    int tempHeight

Temporary place holder for the Height of the component.

#### 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`

#### 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`

### Class java.awt.GridBagLayout extends Object implements Serializable

serialVersionUID:
  8838754796412211005L

### Serialized Fields

#### comptable

    Hashtable<K,V> 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)`

#### 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()`

#### 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()`

#### 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.

#### 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.

#### componentAdjusting

    Component componentAdjusting

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

### Class java.awt.GridBagLayoutInfo extends Object implements Serializable

serialVersionUID:
  -4899416460737170217L

### Serialized Fields

#### width

    int width

#### height

    int height

#### startx

    int startx

#### starty

    int starty

#### minWidth

    int[] minWidth

#### minHeight

    int[] minHeight

#### weightX

    double[] weightX

#### weightY

    double[] weightY

#### hasBaseline

    boolean hasBaseline

#### baselineType

    short[] baselineType

#### maxAscent

    int[] maxAscent

#### maxDescent

    int[] maxDescent

### Class java.awt.GridLayout extends Object implements Serializable

serialVersionUID:
  -7411804673224730901L

### Serialized Fields

#### 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)`

#### 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)`

#### 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)`

#### 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)`

### Class java.awt.HeadlessException extends UnsupportedOperationException implements Serializable

serialVersionUID:
  167183644944358563L

### Class java.awt.IllegalComponentStateException extends IllegalStateException implements Serializable

serialVersionUID:
  -1889339587208144238L

### Class java.awt.Insets extends Object implements Serializable

serialVersionUID:
  -2272572637695466749L

### Serialized Fields

#### 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()`

#### 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()`

#### 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()`

#### 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()`

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
  `ClassNotFoundException`
  `IOException`
Since:
  1.4
See Also:
  `GraphicsEnvironment.isHeadless()`

### Serialized Fields

#### 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)`

#### alignment

    int alignment

The label's alignment. The default alignment is set to be left justified.

See Also:
  `Label.getAlignment()`, `Label.setAlignment(int)`

### Class java.awt.Label.AccessibleAWTLabel extends Component.AccessibleAWTComponent implements Serializable

serialVersionUID:
  -3568967560160480438L

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless` returns `true`
  `ClassNotFoundException`
  `IOException`
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
Throws:
  `IOException`
See Also:
  `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`, `Component.itemListenerK`, `Component.actionListenerK`, `List.readObject(ObjectInputStream)`

### Serialized Fields

#### items

    Vector<E> items

A vector created to contain items which will become part of the List Component.

See Also:
  `List.addItem(String)`, `List.getItem(int)`

#### 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()`

#### 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)`

#### 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)`

#### listSerializedDataVersion

    int listSerializedDataVersion

The `List` component's Serialized Data Version.

### Class java.awt.List.AccessibleAWTList extends Component.AccessibleAWTComponent implements Serializable

serialVersionUID:
  7924617370136012829L

### Class java.awt.List.AccessibleAWTList.AccessibleAWTListChild extends Component.AccessibleAWTComponent implements Serializable

serialVersionUID:
  4412022926028300317L

### Serialized Fields

#### parent

    List parent

#### indexInParent

    int indexInParent

### Class java.awt.MediaTracker extends Object implements Serializable

serialVersionUID:
  -483174189758638095L

### Serialized Fields

#### target

    Component target

A given `Component` that will be tracked by a media tracker where the image will eventually be drawn.

See Also:
  `MediaTracker.MediaTracker(Component)`

#### 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)`

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless` returns `true`
  `IOException`
  `ClassNotFoundException`
See Also:
  `GraphicsEnvironment.isHeadless()`, `Menu.writeObject(ObjectOutputStream)`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Writes default serializable fields to stream.

Throws:
  `IOException`
See Also:
  `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`, `Menu.readObject(ObjectInputStream)`

### Serialized Fields

#### items

    Vector<E> items

A vector of the items that will be part of the Menu.

See Also:
  `Menu.countItems()`

#### 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()`

#### 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`.

#### menuSerializedDataVersion

    int menuSerializedDataVersion

The menu serialized Data Version.

### Class java.awt.Menu.AccessibleAWTMenu extends MenuItem.AccessibleAWTMenuItem implements Serializable

serialVersionUID:
  5228160894980069094L

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless` returns `true`
  `ClassNotFoundException`
  `IOException`
See Also:
  `GraphicsEnvironment.isHeadless()`, `MenuBar.writeObject(java.io.ObjectOutputStream)`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws ClassNotFoundException,
                             IOException

Writes default serializable fields to stream.

Throws:
  `ClassNotFoundException`
  `IOException`
See Also:
  `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`, `MenuBar.readObject(java.io.ObjectInputStream)`

### Serialized Fields

#### menus

    Vector<E> menus

This field represents a vector of the actual menus that will be part of the MenuBar.

See Also:
  `MenuBar.countMenus()`

#### 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.

### Class java.awt.MenuBar.AccessibleAWTMenuBar extends MenuComponent.AccessibleAWTMenuComponent implements Serializable

serialVersionUID:
  -8577604491830083815L

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless` returns `true`
  `ClassNotFoundException`
  `IOException`
See Also:
  `GraphicsEnvironment.isHeadless()`

### Serialized Fields

#### 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)`

#### accessibleContext

    AccessibleContext accessibleContext

### Class java.awt.MenuComponent.AccessibleAWTMenuComponent extends AccessibleContext implements Serializable

serialVersionUID:
  -4269533416223798698L

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless` returns `true`
  `ClassNotFoundException`
  `IOException`
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
Throws:
  `IOException`
See Also:
  `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`, `MenuItem.readObject(ObjectInputStream)`

### Serialized Fields

#### 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)`

#### label

    String label

`label` is the label of a menu item. It can be any string.

See Also:
  `MenuItem.getLabel()`, `MenuItem.setLabel(String)`

#### actionCommand

    String actionCommand

This field indicates the command tha 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()`

#### 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.

#### 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()`

#### menuItemSerializedDataVersion

    int menuItemSerializedDataVersion

Menu item serialized data version.

### Class java.awt.MenuItem.AccessibleAWTMenuItem extends MenuComponent.AccessibleAWTMenuComponent implements Serializable

serialVersionUID:
  -217847831945965825L

### Class java.awt.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:
  JDK1.1
See Also:
  `MenuShortcut.getKey()`, `MenuShortcut.usesShiftModifier()`, `KeyEvent`

#### usesShift

    boolean usesShift

Indicates whether the shft key was pressed. If true, the shift key was pressed. If false, the shift key was not pressed

Since:
  JDK1.1
See Also:
  `MenuShortcut.usesShiftModifier()`

### Class java.awt.Panel extends Container implements Serializable

serialVersionUID:
  -2728009084054400034L

### Class java.awt.Panel.AccessibleAWTPanel extends Container.AccessibleAWTContainer implements Serializable

serialVersionUID:
  -6409552226660031050L

### Class java.awt.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 extends Object implements Serializable

serialVersionUID:
  -6460061437900069969L

### Serialized Fields

#### 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 NULL.

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)`

#### bounds

    Rectangle bounds

The bounds of this `Polygon`. This value can be null.

Since:
  1.0
See Also:
  `Polygon.getBoundingBox()`, `Polygon.getBounds()`

### Class java.awt.PopupMenu extends Menu implements Serializable

serialVersionUID:
  -4620452533522760060L

### Class java.awt.PopupMenu.AccessibleAWTPopupMenu extends Menu.AccessibleAWTMenu implements Serializable

serialVersionUID:
  -4282044795947239955L

### Class java.awt.Rectangle extends Rectangle2D implements Serializable

serialVersionUID:
  -4345857070255674764L

### Serialized Fields

#### 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()`

#### width

    int width

The width of the `Rectangle`.

Since:
  1.0
See Also:
  `Rectangle.setSize(int, int)`, `Rectangle.getSize()`

#### height

    int height

The height of the `Rectangle`.

Since:
  1.0
See Also:
  `Rectangle.setSize(int, int)`, `Rectangle.getSize()`

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless` returns `true`
  `ClassNotFoundException`
  `IOException`
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
Throws:
  `IOException`
See Also:
  `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`, `Component.adjustmentListenerK`, `Scrollbar.readObject(ObjectInputStream)`

### Serialized Fields

#### 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)`

#### 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)`

#### 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)`

#### 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)`

#### 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)`

#### 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.

### Class java.awt.Scrollbar.AccessibleAWTScrollBar extends Component.AccessibleAWTComponent implements Serializable

serialVersionUID:
  -344337268523697807L

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
  `ClassNotFoundException`
  `IOException`
See Also:
  `GraphicsEnvironment.isHeadless()`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Writes default serializable fields to stream.

Throws:
  `IOException`

### Serialized Fields

#### 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()`

#### 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()`

#### wheelScrollingEnabled

    boolean wheelScrollingEnabled

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

Since:
  1.4

### Class java.awt.ScrollPane.AccessibleAWTScrollPane extends Container.AccessibleAWTContainer implements Serializable

serialVersionUID:
  6100703663886637L

### Class java.awt.ScrollPaneAdjustable extends Object implements Serializable

serialVersionUID:
  -3359745691033257079L

### Serialized Fields

#### sp

    ScrollPane sp

The `ScrollPane` this object is a scrollbar of.

#### orientation

    int orientation

Orientation of this scrollbar.

See Also:
  `ScrollPaneAdjustable.getOrientation()`, `Adjustable.HORIZONTAL`, `Adjustable.VERTICAL`

#### 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)`

#### 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)`

#### 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)`

#### 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)`

#### 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)`

#### 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)`

#### adjustmentListener

    AdjustmentListener adjustmentListener

### Class java.awt.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`

### Class java.awt.TextArea extends TextComponent implements Serializable

serialVersionUID:
  3692302836626095722L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws ClassNotFoundException,
                            IOException,
                            HeadlessException

Read the ObjectInputStream.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
  `ClassNotFoundException`
  `IOException`
See Also:
  `GraphicsEnvironment.isHeadless()`

### Serialized Fields

#### 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)`

#### 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()`

#### 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 extends TextComponent.AccessibleAWTTextComponent implements Serializable

serialVersionUID:
  3472827823632144419L

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
  `ClassNotFoundException`
  `IOException`
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.
Throws:
  `IOException`
See Also:
  `AWTEventMulticaster.save(ObjectOutputStream, String, EventListener)`, `Component.textListenerK`

### Serialized Fields

#### text

    String text

The value of the text. A `null` value is the same as "".

See Also:
  `TextComponent.setText(String)`, `TextComponent.getText()`

#### 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()`

#### 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)`

#### 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)`

#### backgroundSetByClientCode

    boolean backgroundSetByClientCode

#### textComponentSerializedDataVersion

    int textComponentSerializedDataVersion

The textComponent SerializedDataVersion.

#### checkForEnableIM

    boolean checkForEnableIM

### Class java.awt.TextComponent.AccessibleAWTTextComponent extends Component.AccessibleAWTComponent implements Serializable

serialVersionUID:
  3631432373506317811L

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless()` returns `true`
  `ClassNotFoundException`
  `IOException`
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.
Throws:
  `IOException`
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 extends TextComponent.AccessibleAWTTextComponent implements Serializable

serialVersionUID:
  6219164359235943158L

### Class java.awt.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.

Throws:
  `HeadlessException` - if `GraphicsEnvironment.isHeadless` returns `true`
  `ClassNotFoundException`
  `IOException`
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
Throws:
  `IOException`
See Also:
  `AWTEventMulticaster.save(java.io.ObjectOutputStream, java.lang.String, java.util.EventListener)`, `Component.windowListenerK`, `Component.windowFocusListenerK`, `Component.ownedWindowK`, `Window.readObject(ObjectInputStream)`

### Serialized Fields

#### 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()`

#### syncLWRequests

    boolean syncLWRequests

#### state

    int state

An Integer value representing the Window State.

Since:
  1.2
See Also:
  `Window.show()`

#### alwaysOnTop

    boolean alwaysOnTop

A boolean value representing Window always-on-top state

Since:
  1.5
See Also:
  `Window.setAlwaysOnTop(boolean)`, `Window.isAlwaysOnTop()`

#### modalExclusionType

    Dialog.ModalExclusionType modalExclusionType

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

#### focusMgr

    java.awt.FocusManager focusMgr

Unused. Maintained for serialization backward-compatibility.

Since:
  1.2

#### focusableWindowState

    boolean focusableWindowState

Indicates whether this Window can become the focused Window.

Since:
  1.4
See Also:
  `Window.getFocusableWindowState()`, `Window.setFocusableWindowState(boolean)`

#### 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()`

#### 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)`

#### type

    Window.Type type

Window type. Synchronization: ObjectLock

#### windowSerializedDataVersion

    int windowSerializedDataVersion

The window serialized data version.

#### locationByPlatform

    boolean locationByPlatform

### Class java.awt.Window.AccessibleAWTWindow extends Container.AccessibleAWTContainer implements Serializable

serialVersionUID:
  4215068635060671780L

## Package java.awt.color

### Class java.awt.color.CMMException extends RuntimeException implements Serializable

### Class java.awt.color.ColorSpace extends Object implements Serializable

serialVersionUID:
  -409452704308689724L

### Serialized Fields

#### type

    int type

#### numComponents

    int numComponents

### Class java.awt.color.ICC_ColorSpace extends ColorSpace implements Serializable

serialVersionUID:
  3455889114070431483L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws ClassNotFoundException,
                            IOException

Validate ICC_ColorSpace read from an object input stream

Throws:
  `ClassNotFoundException`
  `IOException`

### Serialized Fields

#### thisProfile

    ICC_Profile thisProfile

#### minVal

    float[] minVal

#### maxVal

    float[] maxVal

#### diffMinMax

    float[] diffMinMax

#### invDiffMinMax

    float[] invDiffMinMax

#### needScaleInit

    boolean needScaleInit

### Class java.awt.color.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)`.

Throws:
  `IOException` - thrown by `ObjectInputStream`.
  `ClassNotFoundException` - thrown by `ObjectInputStream`.
See Also:
  `ICC_Profile.readResolve()`, `ICC_Profile.getInstance(int)`, `ICC_Profile.getInstance(byte[])`

#### 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.

Throws:
  `IOException` - thrown by `ObjectInputStream`.

#### 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

### 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 extends ICC_Profile implements Serializable

serialVersionUID:
  -1124721290732002649L

### Class java.awt.color.ICC_ProfileRGB extends ICC_Profile implements Serializable

serialVersionUID:
  8505067385152579334L

### Class java.awt.color.ProfileDataException extends RuntimeException implements Serializable

## Package java.awt.datatransfer

### Class java.awt.datatransfer.DataFlavor extends Object implements Serializable

serialVersionUID:
  8367026044764648243L

### Serialization Methods

#### readExternal

    public void readExternal(ObjectInput is)
                      throws IOException,
                             ClassNotFoundException

Restores this `DataFlavor` from a Serialized state.

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`.

Throws:
  `IOException` - Includes any I/O exceptions that may occur

### Class java.awt.datatransfer.FlavorEvent extends EventObject implements Serializable

### Class java.awt.datatransfer.UnsupportedFlavorException extends Exception implements Serializable

serialVersionUID:
  5383814944251665601L

## Package java.awt.dnd

### Class java.awt.dnd.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`.

Throws:
  `ClassNotFoundException`
  `IOException`
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`.
Throws:
  `IOException`
Since:
  1.4

### Serialized Fields

#### dragSource

    DragSource dragSource

The DragSource associated with this DragGestureEvent.

#### component

    Component component

The Component associated with this DragGestureEvent.

#### origin

    Point origin

The origin of the drag.

#### action

    int action

The user's preferred action.

### Class java.awt.dnd.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.

Throws:
  `ClassNotFoundException`
  `IOException`
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`.
Throws:
  `IOException`
Since:
  1.4

### Serialized Fields

#### dragSource

    DragSource dragSource

The `DragSource` associated with this `DragGestureRecognizer`.

#### component

    Component component

The `Component` associated with this `DragGestureRecognizer`.

#### sourceActions

    int sourceActions

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

#### events

    ArrayList<E> events

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

### Class java.awt.dnd.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.

Throws:
  `ClassNotFoundException`
  `IOException`
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.
  .
Throws:
  `IOException`
Since:
  1.4

### Class java.awt.dnd.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.

Throws:
  `ClassNotFoundException`
  `IOException`
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`.
Throws:
  `IOException`
Since:
  1.4

### Serialized Fields

#### trigger

    DragGestureEvent trigger

The event which triggered the start of the drag.

#### cursor

    Cursor cursor

The current drag cursor.

#### useCustomCursor

    boolean useCustomCursor

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

#### 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.`

### Class java.awt.dnd.DragSourceDragEvent extends DragSourceEvent implements Serializable

serialVersionUID:
  481346297933902471L

### Serialized Fields

#### targetActions

    int targetActions

The target drop action.

#### 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.

### Class java.awt.dnd.DragSourceDropEvent extends DragSourceEvent implements Serializable

serialVersionUID:
  -5571321229470821891L

### Serialized Fields

#### dropSuccess

    boolean dropSuccess

`true` if the drop was successful.

#### dropAction

    int dropAction

The drop action.

### Class java.awt.dnd.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 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.

Throws:
  `ClassNotFoundException`
  `IOException`
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`.
Throws:
  `IOException`
Since:
  1.4

### Serialized Fields

#### dropTargetContext

    DropTargetContext dropTargetContext

The DropTargetContext associated with this DropTarget.

#### component

    Component component

The Component associated with this DropTarget.

#### 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.

### Class java.awt.dnd.DropTargetContext extends Object implements Serializable

serialVersionUID:
  -634158968993743371L

### Serialized Fields

#### dropTarget

    DropTarget dropTarget

The DropTarget associated with this DropTargetContext.

### Class java.awt.dnd.DropTargetDragEvent extends DropTargetEvent implements Serializable

serialVersionUID:
  -8422265619058953682L

### Serialized Fields

#### location

    Point location

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

#### actions

    int actions

The source drop actions.

#### dropAction

    int dropAction

The user drop action.

### Class java.awt.dnd.DropTargetDropEvent extends DropTargetEvent implements Serializable

serialVersionUID:
  -1721911170440459322L

### Serialized Fields

#### location

    Point location

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

#### 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.

### Class java.awt.dnd.DropTargetEvent extends EventObject implements Serializable

serialVersionUID:
  2821229066521922993L

### Serialized Fields

#### context

    DropTargetContext context

The `DropTargetContext` associated with this `DropTargetEvent`.

### Class java.awt.dnd.InvalidDnDOperationException extends IllegalStateException implements Serializable

serialVersionUID:
  -6062568741193956678L

### Class java.awt.dnd.MouseDragGestureRecognizer extends DragGestureRecognizer implements Serializable

serialVersionUID:
  6220099344182281120L

## Package java.awt.event

### Class java.awt.event.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()`

#### 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()`

#### 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()`

### Class java.awt.event.AdjustmentEvent extends AWTEvent implements Serializable

serialVersionUID:
  5700290645205279921L

### Serialized Fields

#### adjustable

    Adjustable adjustable

The adjustable object that fired the event.

See Also:
  `AdjustmentEvent.getAdjustable()`

#### 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()`

#### 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()`

### Class java.awt.event.ComponentEvent extends AWTEvent implements Serializable

serialVersionUID:
  8101406823902992965L

### Class java.awt.event.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 extends ComponentEvent implements Serializable

serialVersionUID:
  523753786457416396L

### Serialized Fields

#### 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 extends AWTEvent implements Serializable

serialVersionUID:
  -5337576970038043990L

### Serialized Fields

#### changed

    Component changed

#### changedParent

    Container changedParent

#### changeFlags

    long changeFlags

### Class java.awt.event.InputEvent extends ComponentEvent implements Serializable

serialVersionUID:
  -2482525981698309786L

### Serialized Fields

#### 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()`

#### 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`

### Class java.awt.event.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()`.

Throws:
  `ClassNotFoundException`
  `IOException`

### 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 extends AWTEvent implements Serializable

serialVersionUID:
  436056344909459450L

### Serialized Fields

#### runnable

    Runnable runnable

The Runnable whose run() method will be called.

#### 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()`

#### 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()`

#### dispatched

    boolean dispatched

Indicates whether the `run()` method of the `runnable` was executed or not.

Since:
  1.7
See Also:
  `InvocationEvent.isDispatched()`

#### 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.

#### 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.

#### 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 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 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 overlaping mouse modifiers.

Throws:
  `IOException`
  `ClassNotFoundException`

### 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

#### 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)`

#### 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)`

#### 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.

### Class java.awt.event.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.

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### 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()`

#### 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()`

#### 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.

#### 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.

#### 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()`

#### 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()`

#### 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()`

### Class java.awt.event.MouseWheelEvent extends MouseEvent implements Serializable

serialVersionUID:
  6459879390515399677L

### Serialized Fields

#### 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()`

#### 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()`

#### wheelRotation

    int wheelRotation

Indicates how far the mouse wheel was rotated.

See Also:
  `MouseWheelEvent.getWheelRotation()`

#### preciseWheelRotation

    double preciseWheelRotation

Indicates how far the mouse wheel was rotated.

See Also:
  `MouseWheelEvent.getPreciseWheelRotation()`

### Class java.awt.event.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 extends AWTEvent implements Serializable

serialVersionUID:
  6269902291250941179L

### Class java.awt.event.WindowEvent extends ComponentEvent implements Serializable

serialVersionUID:
  -1567959133147912127L

### Serialized Fields

#### oldState

    int oldState

TBS

#### newState

    int newState

## Package java.awt.font

### Class java.awt.font.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.

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 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 extends Object implements Serializable

serialVersionUID:
  3356247357827709530L

### Serialization Methods

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws ClassNotFoundException,
                             IOException

Throws:
  `ClassNotFoundException`
  `IOException`

#### readResolve

    private Object readResolve()
                        throws ObjectStreamException

Throws:
  `ObjectStreamException`

### 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 extends Object implements Serializable

serialVersionUID:
  1330973210523860834L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws ClassNotFoundException,
                            IOException

Throws:
  `ClassNotFoundException`
  `IOException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws ClassNotFoundException,
                             IOException

Throws:
  `ClassNotFoundException`
  `IOException`

### Serialized Fields

#### m00

    double m00

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

#### m10

    double m10

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

#### m01

    double m01

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

#### m11

    double m11

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

#### m02

    double m02

The X coordinate of the translation 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 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`.
Throws:
  `ClassNotFoundException`
  `IOException`

#### 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`.
Throws:
  `IOException`

### Serialized Fields

#### 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

#### 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

#### 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

#### extent

    double extent

The angular extent of the arc in degrees.

Since:
  1.2

### Class java.awt.geom.Arc2D.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`.
Throws:
  `ClassNotFoundException`
  `IOException`

#### 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`.
Throws:
  `IOException`

### Serialized Fields

#### 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

#### 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

#### 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

#### extent

    float extent

The angular extent of the arc in degrees.

Since:
  1.2

### Class java.awt.geom.CubicCurve2D.Double extends CubicCurve2D implements Serializable

serialVersionUID:
  -4202960122839707295L

### Serialized Fields

#### x1

    double x1

The X coordinate of the start 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

#### ctrlx1

    double ctrlx1

The X coordinate of the first 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

#### ctrlx2

    double ctrlx2

The X coordinate of the second 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

#### x2

    double x2

The X coordinate of the end 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 extends CubicCurve2D implements Serializable

serialVersionUID:
  -1272015596714244385L

### Serialized Fields

#### x1

    float x1

The X coordinate of the start 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

#### ctrlx1

    float ctrlx1

The X coordinate of the first 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

#### ctrlx2

    float ctrlx2

The X coordinate of the second 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

#### x2

    float x2

The X coordinate of the end 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 extends Ellipse2D implements Serializable

serialVersionUID:
  5555464816372320683L

### Serialized Fields

#### 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

#### width

    double width

The overall width of this `Ellipse2D`.

Since:
  1.2

#### height

    double height

The overall height of the `Ellipse2D`.

Since:
  1.2

### Class java.awt.geom.Ellipse2D.Float extends Ellipse2D implements Serializable

serialVersionUID:
  -6633761252372475977L

### Serialized Fields

#### 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

#### width

    float width

The overall width of this `Ellipse2D`.

Since:
  1.2

#### height

    float height

The overall height of this `Ellipse2D`.

Since:
  1.2

### Class java.awt.geom.GeneralPath extends Path2D.Float implements Serializable

serialVersionUID:
  -8327096662768731142L

### Class java.awt.geom.IllegalPathStateException extends RuntimeException implements Serializable

### Class java.awt.geom.Line2D.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

#### y1

    double y1

The Y 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

#### y2

    double y2

The Y coordinate of the end point of the line segment.

Since:
  1.2

### Class java.awt.geom.Line2D.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

#### y1

    float y1

The Y 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

#### y2

    float y2

The Y coordinate of the end point of the line segment.

Since:
  1.2

### Class java.awt.geom.NoninvertibleTransformException extends Exception implements Serializable

### Class java.awt.geom.Path2D.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.

Throws:
  `ClassNotFoundException`
  `IOException`
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:

  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.

Throws:
  `IOException`
Since:
  1.6

### Class java.awt.geom.Path2D.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.

Throws:
  `ClassNotFoundException`
  `IOException`
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:

  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.

Throws:
  `IOException`
Since:
  1.6

### Class java.awt.geom.Point2D.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 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 extends QuadCurve2D implements Serializable

serialVersionUID:
  4217149928428559721L

### Serialized Fields

#### x1

    double x1

The X coordinate of the start 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

#### 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

#### x2

    double x2

The X coordinate of the end 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 extends QuadCurve2D implements Serializable

serialVersionUID:
  -8511188402130719609L

### Serialized Fields

#### x1

    float x1

The X coordinate of the start 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

#### 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

#### x2

    float x2

The X coordinate of the end 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 extends Rectangle2D implements Serializable

serialVersionUID:
  7771313791441850493L

### Serialized Fields

#### x

    double x

The X coordinate of this `Rectangle2D`.

Since:
  1.2

#### y

    double y

The Y coordinate of this `Rectangle2D`.

Since:
  1.2

#### width

    double width

The width of this `Rectangle2D`.

Since:
  1.2

#### height

    double height

The height of this `Rectangle2D`.

Since:
  1.2

### Class java.awt.geom.Rectangle2D.Float extends Rectangle2D implements Serializable

serialVersionUID:
  3798716824173675777L

### Serialized Fields

#### x

    float x

The X coordinate of this `Rectangle2D`.

Since:
  1.2

#### y

    float y

The Y coordinate of this `Rectangle2D`.

Since:
  1.2

#### width

    float width

The width of this `Rectangle2D`.

Since:
  1.2

#### height

    float height

The height of this `Rectangle2D`.

Since:
  1.2

### Class java.awt.geom.RoundRectangle2D.Double extends RoundRectangle2D implements Serializable

serialVersionUID:
  1048939333485206117L

### Serialized Fields

#### x

    double x

The X coordinate of this `RoundRectangle2D`.

Since:
  1.2

#### y

    double y

The Y coordinate of this `RoundRectangle2D`.

Since:
  1.2

#### width

    double width

The width of this `RoundRectangle2D`.

Since:
  1.2

#### height

    double height

The height of this `RoundRectangle2D`.

Since:
  1.2

#### arcwidth

    double arcwidth

The width of the arc that rounds off the corners.

Since:
  1.2

#### archeight

    double archeight

The height of the arc that rounds off the corners.

Since:
  1.2

### Class java.awt.geom.RoundRectangle2D.Float extends RoundRectangle2D implements Serializable

serialVersionUID:
  -3423150618393866922L

### Serialized Fields

#### x

    float x

The X coordinate of this `RoundRectangle2D`.

Since:
  1.2

#### y

    float y

The Y coordinate of this `RoundRectangle2D`.

Since:
  1.2

#### width

    float width

The width of this `RoundRectangle2D`.

Since:
  1.2

#### height

    float height

The height of this `RoundRectangle2D`.

Since:
  1.2

#### arcwidth

    float arcwidth

The width of the arc that rounds off the corners.

Since:
  1.2

#### archeight

    float archeight

The height of the arc that rounds off the corners.

Since:
  1.2

## Package java.awt.image

### Class java.awt.image.ImagingOpException extends RuntimeException implements Serializable

### Class java.awt.image.RasterFormatException extends RuntimeException implements Serializable

## Package java.awt.image.renderable

### Class java.awt.image.renderable.ParameterBlock extends Object implements Serializable

### Serialized Fields

#### sources

    Vector<E> sources

A Vector of sources, stored as arbitrary Objects.

#### parameters

    Vector<E> parameters

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

## Package java.awt.print

### Class java.awt.print.PrinterAbortException extends PrinterException implements Serializable

### Class java.awt.print.PrinterException extends Exception implements Serializable

### Class java.awt.print.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 extends PropertyChangeEvent implements Serializable

serialVersionUID:
  -320227448495806870L

### Serialized Fields

#### index

    int index

### Class java.beans.IntrospectionException extends Exception implements Serializable

serialVersionUID:
  -3728150539969542619L

### Class java.beans.PropertyChangeEvent extends EventObject implements Serializable

serialVersionUID:
  7042693688939648123L

### Serialized Fields

#### propertyName

    String propertyName

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

#### 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()`

### Class java.beans.PropertyChangeSupport extends Object implements Serializable

serialVersionUID:
  6401253773779951803L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws ClassNotFoundException,
                            IOException

Throws:
  `ClassNotFoundException`
  `IOException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Serial Data:
  Null terminated list of `PropertyChangeListeners`.

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

Throws:
  `IOException`

### Serialized Fields

#### children

    Hashtable<K,V> children

#### propertyChangeSupportSerializedDataVersion

    int propertyChangeSupportSerializedDataVersion

#### source

    Object source

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

### Class java.beans.PropertyVetoException extends Exception implements Serializable

serialVersionUID:
  129596057694162164L

### Serialized Fields

#### evt

    PropertyChangeEvent evt

A PropertyChangeEvent describing the vetoed change.

### Class java.beans.VetoableChangeSupport extends Object implements Serializable

serialVersionUID:
  -5090210921595982017L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws ClassNotFoundException,
                            IOException

Throws:
  `ClassNotFoundException`
  `IOException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Serial Data:
  Null terminated list of `VetoableChangeListeners`.

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

Throws:
  `IOException`

### Serialized Fields

#### children

    Hashtable<K,V> children

#### source

    Object source

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

#### vetoableChangeSupportSerializedDataVersion

    int vetoableChangeSupportSerializedDataVersion

## Package java.beans.beancontext

### Class java.beans.beancontext.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

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream oos)
                      throws IOException

Write the persistence state of the object.

Throws:
  `IOException`

### 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 extends EventObject implements Serializable

serialVersionUID:
  7267998073569045052L

### Serialized Fields

#### propagatedFrom

    BeanContext propagatedFrom

The `BeanContext` from which this event was propagated

### Class java.beans.beancontext.BeanContextMembershipEvent extends BeanContextEvent implements Serializable

serialVersionUID:
  3499346510334590959L

### Serialized Fields

#### children

    Collection<E> children

The list of children affected by this event notification.

### Class java.beans.beancontext.BeanContextServiceAvailableEvent extends BeanContextEvent implements Serializable

serialVersionUID:
  -5333985775656400778L

### Serialized Fields

#### serviceClass

    Class<T> serviceClass

A `Class` reference to the newly available service

### Class java.beans.beancontext.BeanContextServiceRevokedEvent extends BeanContextEvent implements Serializable

serialVersionUID:
  -1295543154724961754L

### Serialized Fields

#### serviceClass

    Class<T> serviceClass

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

#### invalidateRefs

    boolean invalidateRefs

### Class java.beans.beancontext.BeanContextServicesSupport extends BeanContextSupport implements Serializable

serialVersionUID:
  -8494482757288719206L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream ois)
                     throws IOException,
                            ClassNotFoundException

deserialize the instance

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream oos)
                      throws IOException

serialize the instance

Throws:
  `IOException`

### Class java.beans.beancontext.BeanContextServicesSupport.BCSSChild extends BeanContextSupport.BCSChild implements Serializable

serialVersionUID:
  -3263851306889194873L

### Class java.beans.beancontext.BeanContextServicesSupport.BCSSServiceProvider extends Object implements Serializable

serialVersionUID:
  861278251667444782L

### Serialized Fields

#### serviceProvider

    BeanContextServiceProvider serviceProvider

The service provider.

### Class java.beans.beancontext.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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream oos)
                      throws IOException,
                             ClassNotFoundException

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().

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### serializable

    int serializable

#### locale

    Locale locale

The current locale of this BeanContext.

#### okToUseGui

    boolean okToUseGui

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

#### designTime

    boolean designTime

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

### Class java.beans.beancontext.BeanContextSupport.BCSChild extends Object implements Serializable

serialVersionUID:
  -5815286101609939109L

### Serialized Fields

#### child

    Object child

#### proxyPeer

    Object proxyPeer

## Package java.io

### Class java.io.CharConversionException extends IOException implements Serializable

serialVersionUID:
  -8680016352018427031L

### Class java.io.EOFException extends IOException implements Serializable

serialVersionUID:
  6433858223774886977L

### Class java.io.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 than the separator character on this system, then the old separator is replaced by the local separator.

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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.
Throws:
  `IOException`

### 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.

### Class java.io.FileNotFoundException extends IOException implements Serializable

serialVersionUID:
  -897856973823710492L

### Class java.io.FilePermissionCollection extends PermissionCollection implements Serializable

serialVersionUID:
  2202956749081564585L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream in)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream out)
                      throws IOException

Serial Data:
  "permissions" field (a Vector containing the FilePermissions).
Throws:
  `IOException`

### Serialized Fields

#### permissions

    Vector<E> permissions

A list of FilePermission objects.

### Class java.io.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.

### Class java.io.InvalidClassException extends ObjectStreamException implements Serializable

serialVersionUID:
  -4333316296251054416L

### Serialized Fields

#### classname

    String classname

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

### Class java.io.InvalidObjectException extends ObjectStreamException implements Serializable

serialVersionUID:
  3233174318281839583L

### Class java.io.IOError extends Error implements Serializable

serialVersionUID:
  67100927991680413L

### Class java.io.IOException extends Exception implements Serializable

serialVersionUID:
  7818375828146090155L

### Class java.io.NotActiveException extends ObjectStreamException implements Serializable

serialVersionUID:
  -3893467273049808895L

### Class java.io.NotSerializableException extends ObjectStreamException implements Serializable

serialVersionUID:
  2906642554793891381L

### Class java.io.ObjectStreamClass extends Object implements Serializable

serialVersionUID:
  -6120832682080437368L

### Class java.io.ObjectStreamException extends IOException implements Serializable

serialVersionUID:
  7260898174833392607L

### Class java.io.OptionalDataException extends ObjectStreamException implements Serializable

serialVersionUID:
  -8011121865681257820L

### Serialized Fields

#### length

    int length

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

#### eof

    boolean eof

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

### Class java.io.SerializablePermission extends BasicPermission implements Serializable

serialVersionUID:
  8537212141160296410L

### Serialized Fields

#### actions

    String actions

### Class java.io.StreamCorruptedException extends ObjectStreamException implements Serializable

serialVersionUID:
  8983558202217591746L

### Class java.io.SyncFailedException extends IOException implements Serializable

serialVersionUID:
  -2353342684412443330L

### Class java.io.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.

Throws:
  `InvalidObjectException` - if the object is invalid or has a cause that is not an `IOException`
  `IOException`
  `ClassNotFoundException`

### Class java.io.UnsupportedEncodingException extends IOException implements Serializable

serialVersionUID:
  -4274276298326136670L

### Class java.io.UTFDataFormatException extends IOException implements Serializable

serialVersionUID:
  420743449228280612L

### Class java.io.WriteAbortedException extends ObjectStreamException implements Serializable

serialVersionUID:
  -3326426625597282442L

### Serialized Fields

#### detail

    Exception detail

Exception that was caught while writing the ObjectStream.

This field predates the general-purpose exception chaining facility. The `Throwable.getCause()` method is now the preferred means of obtaining this information.

## Package java.lang

### Class java.lang.AbstractMethodError extends IncompatibleClassChangeError implements Serializable

serialVersionUID:
  -1654391082989018462L

### Class java.lang.ArithmeticException extends RuntimeException implements Serializable

serialVersionUID:
  2256477558314496007L

### Class java.lang.ArrayIndexOutOfBoundsException extends IndexOutOfBoundsException implements Serializable

serialVersionUID:
  -5116101128118950844L

### Class java.lang.ArrayStoreException extends RuntimeException implements Serializable

serialVersionUID:
  -4522193890499838241L

### Class java.lang.AssertionError extends Error implements Serializable

serialVersionUID:
  -5013299493970297370L

### Class java.lang.Boolean extends Object implements Serializable

serialVersionUID:
  -3665804199014368530L

### Serialized Fields

#### value

    boolean value

The value of the Boolean.

### Class java.lang.BootstrapMethodError extends LinkageError implements Serializable

serialVersionUID:
  292L

### Class java.lang.Byte extends Number implements Serializable

serialVersionUID:
  -7183698231559129828L

### Serialized Fields

#### value

    byte value

The value of the `Byte`.

### Class java.lang.Character extends Object implements Serializable

serialVersionUID:
  3786198910865385080L

### Serialized Fields

#### value

    char value

The value of the `Character`.

### Class java.lang.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`

### Class java.lang.ClassCastException extends RuntimeException implements Serializable

serialVersionUID:
  -9223365651070458532L

### Class java.lang.ClassCircularityError extends LinkageError implements Serializable

serialVersionUID:
  1054362542914539689L

### Class java.lang.ClassFormatError extends LinkageError implements Serializable

serialVersionUID:
  -8420114879011949195L

### Class java.lang.ClassNotFoundException extends ReflectiveOperationException implements Serializable

serialVersionUID:
  9176873029745254542L

### Serialized Fields

#### ex

    Throwable ex

This field holds the exception ex if the ClassNotFoundException(String s, Throwable ex) constructor was used to instantiate the object

Since:
  1.2

### Class java.lang.CloneNotSupportedException extends Exception implements Serializable

serialVersionUID:
  5195511250079656443L

### Class java.lang.Double extends Number implements Serializable

serialVersionUID:
  -9172774392245257468L

### Serialized Fields

#### value

    double value

The value of the Double.

### Class java.lang.Enum extends Object implements Serializable

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream in)
                     throws IOException,
                            ClassNotFoundException

prevent default deserialization

Throws:
  `IOException`
  `ClassNotFoundException`

#### readObjectNoData

    private void readObjectNoData()
                           throws ObjectStreamException

Throws:
  `ObjectStreamException`

### Serialized Fields

#### name

    String name

The name of this enum constant, as declared in the enum declaration. Most programmers should use the `Enum.toString()` method rather than accessing this field.

#### ordinal

    int ordinal

The ordinal of this enumeration constant (its position in the enum declaration, where the initial constant is assigned an ordinal of zero). Most programmers will have no use for this field. It is designed for use by sophisticated enum-based data structures, such as `EnumSet` and `EnumMap`.

### Class java.lang.EnumConstantNotPresentException extends RuntimeException implements Serializable

serialVersionUID:
  -6046998521960521108L

### Serialized Fields

#### enumType

    Class<T> enumType

The type of the missing enum constant.

#### constantName

    String constantName

The name of the missing enum constant.

### Class java.lang.Error extends Throwable implements Serializable

serialVersionUID:
  4980196508277280342L

### Class java.lang.Exception extends Throwable implements Serializable

serialVersionUID:
  -3387516993124229948L

### Class java.lang.ExceptionInInitializerError extends LinkageError implements Serializable

serialVersionUID:
  1521711792217232256L

### Serialized Fields

#### exception

    Throwable exception

This field holds the exception if the ExceptionInInitializerError(Throwable thrown) constructor was used to instantiate the object

### Class java.lang.Float extends Number implements Serializable

serialVersionUID:
  -2671257302660747028L

### Serialized Fields

#### value

    float value

The value of the Float.

### Class java.lang.IllegalAccessError extends IncompatibleClassChangeError implements Serializable

serialVersionUID:
  -8988904074992417891L

### Class java.lang.IllegalAccessException extends ReflectiveOperationException implements Serializable

serialVersionUID:
  6616958222490762034L

### Class java.lang.IllegalArgumentException extends RuntimeException implements Serializable

serialVersionUID:
  -5365630128856068164L

### Class java.lang.IllegalMonitorStateException extends RuntimeException implements Serializable

serialVersionUID:
  3713306369498869069L

### Class java.lang.IllegalStateException extends RuntimeException implements Serializable

serialVersionUID:
  -1848914673093119416L

### Class java.lang.IllegalThreadStateException extends IllegalArgumentException implements Serializable

serialVersionUID:
  -7626246362397460174L

### Class java.lang.IncompatibleClassChangeError extends LinkageError implements Serializable

serialVersionUID:
  -4914975503642802119L

### Class java.lang.IndexOutOfBoundsException extends RuntimeException implements Serializable

serialVersionUID:
  234122996006267687L

### Class java.lang.InstantiationError extends IncompatibleClassChangeError implements Serializable

serialVersionUID:
  -4885810657349421204L

### Class java.lang.InstantiationException extends ReflectiveOperationException implements Serializable

serialVersionUID:
  -8441929162975509110L

### Class java.lang.Integer extends Number implements Serializable

serialVersionUID:
  1360826667806852920L

### Serialized Fields

#### value

    int value

The value of the `Integer`.

### Class java.lang.InternalError extends VirtualMachineError implements Serializable

serialVersionUID:
  -9062593416125562365L

### Class java.lang.InterruptedException extends Exception implements Serializable

serialVersionUID:
  6700697376100628473L

### Class java.lang.LinkageError extends Error implements Serializable

serialVersionUID:
  3579600108157160122L

### Class java.lang.Long extends Number implements Serializable

serialVersionUID:
  4290774380558885855L

### Serialized Fields

#### value

    long value

The value of the `Long`.

### Class java.lang.NegativeArraySizeException extends RuntimeException implements Serializable

serialVersionUID:
  -8960118058596991861L

### Class java.lang.NoClassDefFoundError extends LinkageError implements Serializable

serialVersionUID:
  9095859863287012458L

### Class java.lang.NoSuchFieldError extends IncompatibleClassChangeError implements Serializable

serialVersionUID:
  -3456430195886129035L

### Class java.lang.NoSuchFieldException extends ReflectiveOperationException implements Serializable

serialVersionUID:
  -6143714805279938260L

### Class java.lang.NoSuchMethodError extends IncompatibleClassChangeError implements Serializable

serialVersionUID:
  -3765521442372831335L

### Class java.lang.NoSuchMethodException extends ReflectiveOperationException implements Serializable

serialVersionUID:
  5034388446362600923L

### Class java.lang.NullPointerException extends RuntimeException implements Serializable

serialVersionUID:
  5162710183389028792L

### Class java.lang.Number extends Object implements Serializable

serialVersionUID:
  -8742448824652078965L

### Class java.lang.NumberFormatException extends IllegalArgumentException implements Serializable

serialVersionUID:
  -2848938806368998894L

### Class java.lang.OutOfMemoryError extends VirtualMachineError implements Serializable

serialVersionUID:
  8228564086184010517L

### Class java.lang.ReflectiveOperationException extends Exception implements Serializable

serialVersionUID:
  123456789L

### Class java.lang.RuntimeException extends Exception implements Serializable

serialVersionUID:
  -7034897190745766939L

### Class java.lang.RuntimePermission extends BasicPermission implements Serializable

serialVersionUID:
  7399184964622342223L

### Class java.lang.SecurityException extends RuntimeException implements Serializable

serialVersionUID:
  6878364983674394167L

### Class java.lang.Short extends Number implements Serializable

serialVersionUID:
  7515723908773894738L

### Serialized Fields

#### value

    short value

The value of the `Short`.

### Class java.lang.StackOverflowError extends VirtualMachineError implements Serializable

serialVersionUID:
  8609175038441759607L

### Class java.lang.StackTraceElement extends Object implements Serializable

serialVersionUID:
  6992337162326171013L

### Serialized Fields

#### declaringClass

    String declaringClass

#### methodName

    String methodName

#### fileName

    String fileName

#### lineNumber

    int lineNumber

### Class java.lang.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 Object Serialization Specification, Section 6.2, "Stream Elements"

### Class java.lang.StringBuffer extends java.lang.AbstractStringBuilder implements Serializable

serialVersionUID:
  3388685877147921107L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

readObject is called to restore the state of the StringBuffer from a stream.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

readObject is called to restore the state of the StringBuffer from a stream.

Throws:
  `IOException`

### 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 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 StringBuffer from a stream.

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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.
Throws:
  `IOException`

### Class java.lang.StringIndexOutOfBoundsException extends IndexOutOfBoundsException implements Serializable

serialVersionUID:
  -6762910422159637258L

### Class java.lang.ThreadDeath extends Error implements Serializable

serialVersionUID:
  -4417128565033088268L

### Class java.lang.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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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)`.

Throws:
  `IOException`

### Serialized Fields

#### detailMessage

    String detailMessage

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

#### 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

#### 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 be no-ops.

Since:
  1.4

#### suppressedExceptions

    List<E> 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

### Class java.lang.TypeNotPresentException extends RuntimeException implements Serializable

serialVersionUID:
  -5101214195716534496L

### Serialized Fields

#### typeName

    String typeName

### Class java.lang.UnknownError extends VirtualMachineError implements Serializable

serialVersionUID:
  2524784860676771849L

### Class java.lang.UnsatisfiedLinkError extends LinkageError implements Serializable

serialVersionUID:
  -4019343241616879428L

### Class java.lang.UnsupportedClassVersionError extends ClassFormatError implements Serializable

serialVersionUID:
  -7123279212883497373L

### Class java.lang.UnsupportedOperationException extends RuntimeException implements Serializable

serialVersionUID:
  -1242599979055084673L

### Class java.lang.VerifyError extends LinkageError implements Serializable

serialVersionUID:
  7001962396098498785L

### Class java.lang.VirtualMachineError extends Error implements Serializable

serialVersionUID:
  4161983926571568670L

## Package java.lang.annotation

### Class java.lang.annotation.AnnotationFormatError extends Error implements Serializable

serialVersionUID:
  -4256701562333669892L

### Class java.lang.annotation.AnnotationTypeMismatchException extends RuntimeException implements Serializable

serialVersionUID:
  8125925355765570191L

### Serialized Fields

#### element

    Method element

The `Method` object for the annotation element.

#### 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.

### Class java.lang.annotation.IncompleteAnnotationException extends RuntimeException implements Serializable

serialVersionUID:
  8445097402741811912L

### Serialized Fields

#### annotationType

    Class<T> annotationType

#### elementName

    String elementName

## Package java.lang.instrument

### Class java.lang.instrument.IllegalClassFormatException extends Exception implements Serializable

serialVersionUID:
  -3841736710924794009L

### Class java.lang.instrument.UnmodifiableClassException extends Exception implements Serializable

serialVersionUID:
  1716652643585309178L

## Package java.lang.invoke

### Class java.lang.invoke.LambdaConversionException extends Exception implements Serializable

serialVersionUID:
  300L

### Class java.lang.invoke.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.

Throws:
  `IOException` - if there is a problem reading the object
  `ClassNotFoundException` - if one of the component classes cannot be resolved
See Also:
  `MethodType.MethodType()`, `MethodType.readResolve()`, `MethodType.writeObject(java.io.ObjectOutputStream)`

#### 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.

Throws:
  `IOException` - if there is a problem writing the object

#### readResolve

    private Object readResolve()

Resolves and initializes a `MethodType` object after serialization.

### Serialization Overview

There are no serializable fields for `MethodType`.

### Class java.lang.invoke.SerializedLambda extends Object implements Serializable

serialVersionUID:
  8025925345765570181L

### Serialization Methods

#### readResolve

    private Object readResolve()
                        throws ReflectiveOperationException

Throws:
  `ReflectiveOperationException`

### Serialized Fields

#### capturingClass

    Class<T> capturingClass

#### functionalInterfaceClass

    String functionalInterfaceClass

#### functionalInterfaceMethodName

    String functionalInterfaceMethodName

#### functionalInterfaceMethodSignature

    String functionalInterfaceMethodSignature

#### implClass

    String implClass

#### implMethodName

    String implMethodName

#### implMethodSignature

    String implMethodSignature

#### implMethodKind

    int implMethodKind

#### instantiatedMethodType

    String instantiatedMethodType

#### capturedArgs

    Object[] capturedArgs

### Class java.lang.invoke.WrongMethodTypeException extends RuntimeException implements Serializable

serialVersionUID:
  292L

## Package java.lang.management

### Class java.lang.management.ManagementPermission extends BasicPermission implements Serializable

serialVersionUID:
  1897496590799378737L

## Package java.lang.reflect

### Class java.lang.reflect.GenericSignatureFormatError extends ClassFormatError implements Serializable

serialVersionUID:
  6709919147137911034L

### Class java.lang.reflect.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

### Class java.lang.reflect.MalformedParameterizedTypeException extends RuntimeException implements Serializable

serialVersionUID:
  -5696557788586220964L

### Class java.lang.reflect.MalformedParametersException extends RuntimeException implements Serializable

serialVersionUID:
  20130919L

### Class java.lang.reflect.Proxy extends Object implements Serializable

serialVersionUID:
  -2222568056686623797L

### Serialized Fields

#### h

    InvocationHandler h

the invocation handler for this proxy instance.

### Class java.lang.reflect.ReflectPermission extends BasicPermission implements Serializable

serialVersionUID:
  7412737110241507485L

### Class java.lang.reflect.UndeclaredThrowableException extends RuntimeException implements Serializable

serialVersionUID:
  330127114055056639L

### Serialized Fields

#### undeclaredThrowable

    Throwable undeclaredThrowable

the undeclared checked exception that was thrown

## Package java.math

### Class java.math.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).

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Serialize this `BigDecimal` to the stream in question

Throws:
  `IOException`

### 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 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, bitCount, bitLength and lowestSetBit, 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 be default since defaultReadObject is not being used.

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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.

Serial Data:
  two necessary fields are written as well as obsolete fields for compatibility with older versions.
Throws:
  `IOException`

### Serialization Overview

Serializable fields for BigInteger.

### Serialized Fields

#### bitCount

    int bitCount

number of bits in this BigInteger

#### bitLength

    int bitLength

the number of bits in the minimal two's-complement representation of this BigInteger

#### lowestSetBit

    int lowestSetBit

lowest set bit in the twos complement representation

#### magnitude

    int[] magnitude

magnitude array of this BigInteger.

#### signum

    int signum

signum of this BigInteger.

### Class java.math.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).

Throws:
  `IOException`
  `ClassNotFoundException`

### 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

### Class java.net.BindException extends SocketException implements Serializable

serialVersionUID:
  -5945005768251722951L

### Class java.net.ConnectException extends SocketException implements Serializable

serialVersionUID:
  3831404271622369215L

### Class java.net.HttpRetryException extends IOException implements Serializable

serialVersionUID:
  -9186022286469111381L

### Serialized Fields

#### responseCode

    int responseCode

#### location

    String location

### Class java.net.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 extends InetAddress implements Serializable

serialVersionUID:
  6880410070516793377L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

restore the state of this object from stream including the scope information, only if the scoped interface name is valid on this system

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

default behavior is overridden in order to write the scope_ifname field as a String, rather than a NetworkInterface which is not serializable

Throws:
  `IOException`

### Serialized Fields

#### ifname

    String ifname

#### ipaddress

    byte[] ipaddress

#### scope_id

    int scope_id

#### scope_id_set

    boolean scope_id_set

#### scope_ifname_set

    boolean scope_ifname_set

### Class java.net.InetAddress extends Object implements Serializable

serialVersionUID:
  3286316764910316507L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Throws:
  `IOException`

#### 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

#### readObjectNoData

    private void readObjectNoData(ObjectInputStream s)
                           throws IOException,
                                  ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### address

    int address

#### family

    int family

#### hostName

    String hostName

### Class java.net.InetSocketAddress extends SocketAddress implements Serializable

serialVersionUID:
  5076001401234631237L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream in)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream out)
                      throws IOException

Throws:
  `IOException`

#### readObjectNoData

    private void readObjectNoData()
                           throws ObjectStreamException

Throws:
  `ObjectStreamException`

### Serialized Fields

#### addr

    InetAddress addr

#### hostname

    String hostname

#### port

    int port

### Class java.net.MalformedURLException extends IOException implements Serializable

serialVersionUID:
  -182787522200415866L

### Class java.net.NetPermission extends BasicPermission implements Serializable

serialVersionUID:
  -8343910153355041693L

### Class java.net.NoRouteToHostException extends SocketException implements Serializable

serialVersionUID:
  -1897550894873493790L

### Class java.net.PortUnreachableException extends SocketException implements Serializable

serialVersionUID:
  8462541992376507323L

### Class java.net.ProtocolException extends IOException implements Serializable

serialVersionUID:
  -6098449442062388080L

### Class java.net.SocketAddress extends Object implements Serializable

serialVersionUID:
  5215720748342549866L

### Class java.net.SocketException extends IOException implements Serializable

serialVersionUID:
  -5935874303556886934L

### Class java.net.SocketPermissionCollection extends PermissionCollection implements Serializable

serialVersionUID:
  2787186408602843674L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream in)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream out)
                      throws IOException

Serial Data:
  "permissions" field (a Vector containing the SocketPermissions).
Throws:
  `IOException`

### Serialized Fields

#### permissions

    Vector<E> permissions

A list of the SocketPermissions for this set.

### Class java.net.SocketTimeoutException extends InterruptedIOException implements Serializable

serialVersionUID:
  -8846654841826352300L

### Class java.net.UnknownHostException extends IOException implements Serializable

serialVersionUID:
  -4639126076052875403L

### Class java.net.UnknownServiceException extends IOException implements Serializable

serialVersionUID:
  -4169033248853639508L

### Class java.net.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.

Throws:
  `ClassNotFoundException`
  `IOException`

#### 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.

Throws:
  `IOException`

### Serialized Fields

#### string

    String string

The string form of this URI.

### Class java.net.URISyntaxException extends Exception implements Serializable

serialVersionUID:
  2137979680897488891L

### Serialized Fields

#### input

    String input

#### index

    int index

### Class java.net.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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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.
Throws:
  `IOException`

#### 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

### Serialized Fields

#### authority

    String authority

The authority part of this URL.

#### file

    String file

The specified file name on that host. {@code file} is defined as {@code path[?query]}

#### hashCode

    int hashCode

#### 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

# reference.

### Class java.net.URLPermission extends Permission implements Serializable

serialVersionUID:
  -2702463814894478682L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

restore the state of this object from stream

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### actions

    String actions

## Package java.nio

### Class java.nio.BufferOverflowException extends RuntimeException implements Serializable

serialVersionUID:
  -5484897634319144535L

### Class java.nio.BufferUnderflowException extends RuntimeException implements Serializable

serialVersionUID:
  -1713313658691622206L

### Class java.nio.InvalidMarkException extends IllegalStateException implements Serializable

serialVersionUID:
  1698329710438510774L

### Class java.nio.ReadOnlyBufferException extends UnsupportedOperationException implements Serializable

serialVersionUID:
  -1210063976496234090L

## Package java.nio.channels

### Class java.nio.channels.AcceptPendingException extends IllegalStateException implements Serializable

serialVersionUID:
  2721339977965416421L

### Class java.nio.channels.AlreadyBoundException extends IllegalStateException implements Serializable

serialVersionUID:
  6796072983322737592L

### Class java.nio.channels.AlreadyConnectedException extends IllegalStateException implements Serializable

serialVersionUID:
  -7331895245053773357L

### Class java.nio.channels.AsynchronousCloseException extends ClosedChannelException implements Serializable

serialVersionUID:
  6891178312432313966L

### Class java.nio.channels.CancelledKeyException extends IllegalStateException implements Serializable

serialVersionUID:
  -8438032138028814268L

### Class java.nio.channels.ClosedByInterruptException extends AsynchronousCloseException implements Serializable

serialVersionUID:
  -4488191543534286750L

### Class java.nio.channels.ClosedChannelException extends IOException implements Serializable

serialVersionUID:
  882777185433553857L

### Class java.nio.channels.ClosedSelectorException extends IllegalStateException implements Serializable

serialVersionUID:
  6466297122317847835L

### Class java.nio.channels.ConnectionPendingException extends IllegalStateException implements Serializable

serialVersionUID:
  2008393366501760879L

### Class java.nio.channels.FileLockInterruptionException extends IOException implements Serializable

serialVersionUID:
  7104080643653532383L

### Class java.nio.channels.IllegalBlockingModeException extends IllegalStateException implements Serializable

serialVersionUID:
  -3335774961855590474L

### Class java.nio.channels.IllegalChannelGroupException extends IllegalArgumentException implements Serializable

serialVersionUID:
  -2495041211157744253L

### Class java.nio.channels.IllegalSelectorException extends IllegalArgumentException implements Serializable

serialVersionUID:
  -8406323347253320987L

### Class java.nio.channels.InterruptedByTimeoutException extends IOException implements Serializable

serialVersionUID:
  -4268008601014042947L

### Class java.nio.channels.NoConnectionPendingException extends IllegalStateException implements Serializable

serialVersionUID:
  -8296561183633134743L

### Class java.nio.channels.NonReadableChannelException extends IllegalStateException implements Serializable

serialVersionUID:
  -3200915679294993514L

### Class java.nio.channels.NonWritableChannelException extends IllegalStateException implements Serializable

serialVersionUID:
  -7071230488279011621L

### Class java.nio.channels.NotYetBoundException extends IllegalStateException implements Serializable

serialVersionUID:
  4640999303950202242L

### Class java.nio.channels.NotYetConnectedException extends IllegalStateException implements Serializable

serialVersionUID:
  4697316551909513464L

### Class java.nio.channels.OverlappingFileLockException extends IllegalStateException implements Serializable

serialVersionUID:
  2047812138163068433L

### Class java.nio.channels.ReadPendingException extends IllegalStateException implements Serializable

serialVersionUID:
  1986315242191227217L

### Class java.nio.channels.ShutdownChannelGroupException extends IllegalStateException implements Serializable

serialVersionUID:
  -3903801676350154157L

### Class java.nio.channels.UnresolvedAddressException extends IllegalArgumentException implements Serializable

serialVersionUID:
  6136959093620794148L

### Class java.nio.channels.UnsupportedAddressTypeException extends IllegalArgumentException implements Serializable

serialVersionUID:
  -2964323842829700493L

### Class java.nio.channels.WritePendingException extends IllegalStateException implements Serializable

serialVersionUID:
  7031871839266032276L

## Package java.nio.charset

### Class java.nio.charset.CharacterCodingException extends IOException implements Serializable

serialVersionUID:
  8421532232154627783L

### Class java.nio.charset.CoderMalfunctionError extends Error implements Serializable

serialVersionUID:
  -1151412348057794301L

### Class java.nio.charset.IllegalCharsetNameException extends IllegalArgumentException implements Serializable

serialVersionUID:
  1457525358470002989L

### Serialized Fields

#### charsetName

    String charsetName

### Class java.nio.charset.MalformedInputException extends CharacterCodingException implements Serializable

serialVersionUID:
  -3438823399834806194L

### Serialized Fields

#### inputLength

    int inputLength

### Class java.nio.charset.UnmappableCharacterException extends CharacterCodingException implements Serializable

serialVersionUID:
  -7026962371537706123L

### Serialized Fields

#### inputLength

    int inputLength

### Class java.nio.charset.UnsupportedCharsetException extends IllegalArgumentException implements Serializable

serialVersionUID:
  1490765524727386367L

### Serialized Fields

#### charsetName

    String charsetName

## Package java.nio.file

### Class java.nio.file.AccessDeniedException extends FileSystemException implements Serializable

serialVersionUID:
  4943049599949219617L

### Class java.nio.file.AtomicMoveNotSupportedException extends FileSystemException implements Serializable

serialVersionUID:
  5402760225333135579L

### Class java.nio.file.ClosedDirectoryStreamException extends IllegalStateException implements Serializable

serialVersionUID:
  4228386650900895400L

### Class java.nio.file.ClosedFileSystemException extends IllegalStateException implements Serializable

serialVersionUID:
  -8158336077256193488L

### Class java.nio.file.ClosedWatchServiceException extends IllegalStateException implements Serializable

serialVersionUID:
  1853336266231677732L

### Class java.nio.file.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.

Throws:
  `InvalidObjectException` - if the object is invalid or has a cause that is not an `IOException`
  `IOException`
  `ClassNotFoundException`

### Class java.nio.file.DirectoryNotEmptyException extends FileSystemException implements Serializable

serialVersionUID:
  3056667871802779003L

### Class java.nio.file.FileAlreadyExistsException extends FileSystemException implements Serializable

serialVersionUID:
  7579540934498831181L

### Class java.nio.file.FileSystemAlreadyExistsException extends RuntimeException implements Serializable

serialVersionUID:
  -5438419127181131148L

### Class java.nio.file.FileSystemException extends IOException implements Serializable

serialVersionUID:
  -3055425747967319812L

### Serialized Fields

#### file

    String file

#### other

    String other

### Class java.nio.file.FileSystemLoopException extends FileSystemException implements Serializable

serialVersionUID:
  4843039591949217617L

### Class java.nio.file.FileSystemNotFoundException extends RuntimeException implements Serializable

serialVersionUID:
  7999581764446402397L

### Class java.nio.file.InvalidPathException extends IllegalArgumentException implements Serializable

serialVersionUID:
  4355821422286746137L

### Serialized Fields

#### input

    String input

#### index

    int index

### Class java.nio.file.LinkPermission extends BasicPermission implements Serializable

serialVersionUID:
  -1441492453772213220L

### Class java.nio.file.NoSuchFileException extends FileSystemException implements Serializable

serialVersionUID:
  -1390291775875351931L

### Class java.nio.file.NotDirectoryException extends FileSystemException implements Serializable

serialVersionUID:
  -9011457427178200199L

### Class java.nio.file.NotLinkException extends FileSystemException implements Serializable

serialVersionUID:
  -388655596416518021L

### Class java.nio.file.ProviderMismatchException extends IllegalArgumentException implements Serializable

serialVersionUID:
  4990847485741612530L

### Class java.nio.file.ProviderNotFoundException extends RuntimeException implements Serializable

serialVersionUID:
  -1880012509822920354L

### Class java.nio.file.ReadOnlyFileSystemException extends UnsupportedOperationException implements Serializable

serialVersionUID:
  -6822409595617487197L

## Package java.nio.file.attribute

### Class java.nio.file.attribute.UserPrincipalNotFoundException extends IOException implements Serializable

serialVersionUID:
  -5369283889045833024L

### Serialized Fields

#### name

    String name

## Package java.rmi

### Class java.rmi.AccessException extends RemoteException implements Serializable

serialVersionUID:
  6314925228044966088L

### Class java.rmi.AlreadyBoundException extends Exception implements Serializable

serialVersionUID:
  9218657361741657110L

### Class java.rmi.ConnectException extends RemoteException implements Serializable

serialVersionUID:
  4863550261346652506L

### Class java.rmi.ConnectIOException extends RemoteException implements Serializable

serialVersionUID:
  -8087809532704668744L

### Class java.rmi.MarshalException extends RemoteException implements Serializable

serialVersionUID:
  6223554758134037936L

### Class java.rmi.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.

Throws:
  `IOException` - if an I/O error occurs
  `ClassNotFoundException` - if a class cannot be found

### Serialized Fields

#### objBytes

    byte[] objBytes

Bytes of serialized representation. If `objBytes` is `null` then the object marshalled was a `null` reference.

#### locBytes

    byte[] locBytes

Bytes of location annotations, which are ignored by `equals`. If `locBytes` is null, there were no non-`null` annotations during marshalling.

#### hash

    int hash

Stored hash code of contained object.

See Also:
  `MarshalledObject.hashCode()`

### Class java.rmi.NoSuchObjectException extends RemoteException implements Serializable

serialVersionUID:
  6619395951570472985L

### Class java.rmi.NotBoundException extends Exception implements Serializable

serialVersionUID:
  -1857741824849069317L

### Class java.rmi.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.

### Class java.rmi.RMISecurityException extends SecurityException implements Serializable

serialVersionUID:
  -8433406075740433514L

### Class java.rmi.ServerError extends RemoteException implements Serializable

serialVersionUID:
  8455284893909696482L

### Class java.rmi.ServerException extends RemoteException implements Serializable

serialVersionUID:
  -4775845313121906682L

### Class java.rmi.ServerRuntimeException extends RemoteException implements Serializable

serialVersionUID:
  7054464920481467219L

### Class java.rmi.StubNotFoundException extends RemoteException implements Serializable

serialVersionUID:
  -7088199405468872373L

### Class java.rmi.UnexpectedException extends RemoteException implements Serializable

serialVersionUID:
  1800467484195073863L

### Class java.rmi.UnknownHostException extends RemoteException implements Serializable

serialVersionUID:
  -8152710247442114228L

### Class java.rmi.UnmarshalException extends RemoteException implements Serializable

serialVersionUID:
  594380845140740218L

## Package java.rmi.activation

### Class java.rmi.activation.ActivateFailedException extends RemoteException implements Serializable

serialVersionUID:
  4863550261346652506L

### Class java.rmi.activation.ActivationDesc extends Object implements Serializable

serialVersionUID:
  7455834104417690957L

### Serialized Fields

#### groupID

    ActivationGroupID groupID

the group's identifier

#### className

    String className

the object's class name

#### location

    String location

the object's code location

#### data

    MarshalledObject<T> data

the object's initialization data

#### restart

    boolean restart

indicates whether the object should be restarted

### Class java.rmi.activation.ActivationException extends Exception implements Serializable

serialVersionUID:
  -4320118837291406071L

### Serialized Fields

#### detail

    Throwable detail

The cause of the activation exception.

This field predates the general-purpose exception chaining facility. The `Throwable.getCause()` method is now the preferred means of obtaining this information.

### Class java.rmi.activation.ActivationGroup extends UnicastRemoteObject implements Serializable

serialVersionUID:
  -7696947875314805420L

### Serialized Fields

#### groupID

    ActivationGroupID groupID

the group's identifier

#### monitor

    ActivationMonitor monitor

the group's monitor

#### incarnation

    long incarnation

the group's incarnation number

### Class java.rmi.activation.ActivationGroup_Stub extends RemoteStub implements Serializable

### Class java.rmi.activation.ActivationGroupDesc extends Object implements Serializable

serialVersionUID:
  -4936225423168276595L

### Serialized Fields

#### className

    String className

The group's fully package qualified class name.

#### location

    String location

The location from where to load the group's class.

#### data

    MarshalledObject<T> data

The group's initialization data.

#### env

    ActivationGroupDesc.CommandEnvironment env

The controlling options for executing the VM in another process.

#### props

    Properties props

A properties map which will override those set by default in the subprocess environment.

### Class java.rmi.activation.ActivationGroupDesc.CommandEnvironment extends Object implements Serializable

serialVersionUID:
  6165754737887770191L

### 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:

This method first invokes `defaultReadObject` on the specified object input stream, and if `options` is `null`, then `options` is set to a zero-length array of `String`.

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### command

    String command

#### options

    String[] options

### Class java.rmi.activation.ActivationGroupID extends Object implements Serializable

serialVersionUID:
  -1648432278909740833L

### Serialized Fields

#### system

    ActivationSystem system

The group's activation system.

#### uid

    UID uid

The group's unique id.

### Class java.rmi.activation.ActivationID extends Object implements Serializable

serialVersionUID:
  -4608673054848209235L

### 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 `readObject` method is invoked on `in` to read this object's unique identifier (a `UID` instance).

Next, the `readUTF` method is invoked on `in` to read the external ref type name of the `RemoteRef` instance for this object's activator. Next, the `RemoteRef` instance is created of an implementation-specific class corresponding to the external ref type name (returned by `readUTF`), and the `readExternal` method is invoked on that `RemoteRef` instance to read the external form corresponding to the external ref type name.

Note: If the external ref type name is `"UnicastRef"`, `"UnicastServerRef"`, `"UnicastRef2"`, `"UnicastServerRef2"`, or `"ActivatableRef"`, 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 the `RemoteRef` will be an instance of that implementation-specific class.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream out)
                      throws IOException,
                             ClassNotFoundException

`writeObject` for custom serialization.

This method writes this object's serialized form for this class as follows:

The `writeObject` method is invoked on `out` passing this object's unique identifier (a `UID` instance) as the argument.

Next, the `getRefClass` method is invoked on the activator's `RemoteRef` instance to obtain its external ref type name. Next, the `writeUTF` method is invoked on `out` with the value returned by `getRefClass`, and then the `writeExternal` method is invoked on the `RemoteRef` instance passing `out` as the argument.

Serial Data:
  The serialized data for this class comprises a `java.rmi.server.UID` (written with `ObjectOutput.writeObject`) followed by the external ref type name of the activator's `RemoteRef` instance (a string written with `ObjectOutput.writeUTF`), followed by the external form of the `RemoteRef` instance as written by its `writeExternal` method.

  The external ref type name of the `RemoteRef` instance is determined using the definitions of external ref type names specified in the `RemoteObject` `writeObject` method serialData specification. Similarly, the data written by the `writeExternal` method and read by the `readExternal` method of `RemoteRef` implementation classes corresponding to each of the defined external ref type names is specified in the `RemoteObject` `writeObject` method serialData specification.

Throws:
  `IOException`
  `ClassNotFoundException`

### Class java.rmi.activation.UnknownGroupException extends ActivationException implements Serializable

serialVersionUID:
  7056094974750002460L

### Class java.rmi.activation.UnknownObjectException extends ActivationException implements Serializable

serialVersionUID:
  3425547551622251430L

## Package java.rmi.dgc

### Class java.rmi.dgc.Lease extends Object implements Serializable

serialVersionUID:
  -5713411624328831948L

### Serialized Fields

#### vmid

    VMID vmid

Virtual Machine ID with which this Lease is associated.

See Also:
  `Lease.getVMID()`

#### value

    long value

Duration of this lease.

See Also:
  `Lease.getValue()`

### Class java.rmi.dgc.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

### Class java.rmi.server.ExportException extends RemoteException implements Serializable

serialVersionUID:
  -9155485338494060170L

### Class java.rmi.server.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 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"`, `"UnicastServerRef2"`, or `"ActivatableRef"`, 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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream out)
                      throws IOException,
                             ClassNotFoundException

`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 any of the `java.rmi.activation.Activatable.exportObject` methods, the external ref type name is `"ActivatableRef"`. 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 {link java.rmi.server.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 {link java.rmi.server.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 {link java.rmi.server.ObjID#write(java.io.ObjectOutput)} on the `ObjID` instance contained in the reference
  - the boolean value `false`, written by `DataOutput.writeBoolean(boolean)`

  For `"ActivatableRef"` with a `null` nested remote reference:

  - an instance of `java.rmi.activation.ActivationID`, written by passing it to an invocation of `writeObject` on the stream instance
  - a zero-length string (`""`), written by `DataOutput.writeUTF(String)`

  For `"ActivatableRef"` with a non-`null` nested remote reference:

  - an instance of `java.rmi.activation.ActivationID`, written by passing it to an invocation of `writeObject` on the stream instance
  - the external ref type name of the nested remote reference, which must be `"UnicastRef2"`, written by `DataOutput.writeUTF(String)`
  - the external form of the nested remote reference, written by invoking its `writeExternal` method with the stream instance (see the description of the external form for `"UnicastRef2"` above)

  For `"UnicastServerRef"` and `"UnicastServerRef2"`, no data is written by the `writeExternal` method or read by the `readExternal` method.

Throws:
  `IOException`
  `ClassNotFoundException`

### Class java.rmi.server.RemoteObjectInvocationHandler extends RemoteObject implements Serializable

serialVersionUID:
  2L

### Serialization Methods

#### readObjectNoData

    private void readObjectNoData()
                           throws InvalidObjectException

Throws:
  `InvalidObjectException` - unconditionally

### Class java.rmi.server.RemoteServer extends RemoteObject implements Serializable

serialVersionUID:
  -4100238210092549637L

### Class java.rmi.server.RemoteStub extends RemoteObject implements Serializable

serialVersionUID:
  -1585587260594494182L

### Class java.rmi.server.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.

### Class java.rmi.server.ServerNotActiveException extends Exception implements Serializable

serialVersionUID:
  4687940720827538231L

### Class java.rmi.server.SkeletonMismatchException extends RemoteException implements Serializable

serialVersionUID:
  -7780460454818859281L

### Class java.rmi.server.SkeletonNotFoundException extends RemoteException implements Serializable

serialVersionUID:
  -7860299673822761231L

### Class java.rmi.server.SocketSecurityException extends ExportException implements Serializable

serialVersionUID:
  -7622072999407781979L

### Class java.rmi.server.UID extends Object implements Serializable

serialVersionUID:
  1086053664494604050L

### Serialized Fields

#### 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

#### time

    long time

a time (as returned by `System.currentTimeMillis()`) at which the VM that this `UID` was generated in was alive

#### count

    short count

16-bit number to distinguish `UID` instances created in the same VM with the same time value

### Class java.rmi.server.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.

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### port

    int port

port number on which to export object

#### csf

    RMIClientSocketFactory csf

client-side socket factory (if any)

#### ssf

    RMIServerSocketFactory ssf

server-side socket factory (if any) to use when exporting object

## Package java.security

### Class java.security.AccessControlException extends SecurityException implements Serializable

serialVersionUID:
  5138225684096988535L

### Serialized Fields

#### perm

    Permission perm

### Class java.security.AllPermissionCollection extends PermissionCollection implements Serializable

serialVersionUID:
  -4023755556366636806L

### Serialized Fields

#### all_allowed

    boolean all_allowed

### Class java.security.AuthProvider extends Provider implements Serializable

serialVersionUID:
  4197859053084546461L

### Class java.security.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.

Throws:
  `IOException`
  `ClassNotFoundException`

### Class java.security.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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream out)
                      throws IOException

Serial Data:
  Default fields.
Throws:
  `IOException`

### Serialized Fields

#### all_allowed

    boolean all_allowed

This is set to {@code true} if this BasicPermissionCollection contains a BasicPermission with '*' as its permission name.

#### permClass

    Class<T> permClass

The class to which all BasicPermissions in this BasicPermissionCollection belongs.

#### permissions

    Hashtable<K,V> permissions

The BasicPermissions in this BasicPermissionCollection. All BasicPermissions 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 extends Object implements Serializable

serialVersionUID:
  6819288105193937581L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream ois)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### signerCertPath

    CertPath signerCertPath

The signer's certificate path.

#### timestamp

    Timestamp timestamp

### Class java.security.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).

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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.
Throws:
  `IOException`

### Serialized Fields

#### location

    URL location

The code location.

### Class java.security.DigestException extends GeneralSecurityException implements Serializable

serialVersionUID:
  5821450303093652515L

### Class java.security.GeneralSecurityException extends Exception implements Serializable

serialVersionUID:
  894798122053539237L

### Class java.security.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.

Throws:
  `IOException`

### Serialized Fields

#### object

    Object object

#### guard

    Guard guard

### Class java.security.Identity extends Object implements Serializable

serialVersionUID:
  3609922007826600659L

### Serialized Fields

#### name

    String name

Deprecated.
The name for this identity.

#### publicKey

    PublicKey publicKey

Deprecated.
The public key for this identity.

#### info

    String info

Deprecated.
Generic, descriptive information about the identity.

#### scope

    IdentityScope scope

Deprecated.
The scope of the identity.

#### certificates

    Vector<E> certificates

Deprecated.
The certificates for this identity.

### Class java.security.IdentityScope extends Identity implements Serializable

serialVersionUID:
  -2337346281189773310L

### Class java.security.InvalidAlgorithmParameterException extends GeneralSecurityException implements Serializable

serialVersionUID:
  2864672297499471472L

### Class java.security.InvalidKeyException extends KeyException implements Serializable

serialVersionUID:
  5698479920593359816L

### Class java.security.InvalidParameterException extends IllegalArgumentException implements Serializable

serialVersionUID:
  -857968536935667808L

### Class java.security.KeyException extends GeneralSecurityException implements Serializable

serialVersionUID:
  -7483676942812432108L

### Class java.security.KeyManagementException extends KeyException implements Serializable

serialVersionUID:
  947674216157062695L

### Class java.security.KeyPair extends Object implements Serializable

serialVersionUID:
  -7565189502268009837L

### Serialized Fields

#### privateKey

    PrivateKey privateKey

#### publicKey

    PublicKey publicKey

### Class java.security.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

#### type

    KeyRep.Type type

Either one of Type.SECRET, Type.PUBLIC, or Type.PRIVATE

#### algorithm

    String algorithm

The Key algorithm

#### format

    String format

The Key encoding format

#### encoded

    byte[] encoded

The encoded Key bytes

### Class java.security.KeyStoreException extends GeneralSecurityException implements Serializable

serialVersionUID:
  -1119353179322377262L

### Class java.security.NoSuchAlgorithmException extends GeneralSecurityException implements Serializable

serialVersionUID:
  -7443947487218346562L

### Class java.security.NoSuchProviderException extends GeneralSecurityException implements Serializable

serialVersionUID:
  8488111756688534474L

### Class java.security.Permission extends Object implements Serializable

serialVersionUID:
  -5636570222231596674L

### Serialized Fields

#### name

    String name

### Class java.security.PermissionCollection extends Object implements Serializable

serialVersionUID:
  -6727011328946861783L

### Serialized Fields

#### readOnly

    boolean readOnly

### Class java.security.PermissionsHash extends PermissionCollection implements Serializable

serialVersionUID:
  -8491988220802933440L

### 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

#### perms

    Hashtable<K,V> perms

A table of the Permissions (both key and value are same).

### Class java.security.PrivilegedActionException extends Exception implements Serializable

serialVersionUID:
  4724086851538908602L

### Serialized Fields

#### exception

    Exception exception

### Class java.security.Provider extends Properties implements Serializable

serialVersionUID:
  -4298000515446427739L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream in)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### name

    String name

The provider name.

#### info

    String info

A description of the provider and its services.

#### version

    double version

The provider version number.

### Class java.security.ProviderException extends RuntimeException implements Serializable

serialVersionUID:
  5256023526693665674L

### Class java.security.SecureRandom extends Random implements Serializable

serialVersionUID:
  4940670005562187L

### Serialized Fields

#### provider

    Provider provider

The provider.

Since:
  1.2

#### secureRandomSpi

    SecureRandomSpi secureRandomSpi

The provider implementation.

Since:
  1.2

#### algorithm

    String algorithm

#### state

    byte[] state

#### digest

    MessageDigest digest

#### 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

#### counter

    long counter

### Class java.security.SecureRandomSpi extends Object implements Serializable

serialVersionUID:
  -2991854161009191830L

### Class java.security.SecurityPermission extends BasicPermission implements Serializable

serialVersionUID:
  5236109936224050470L

### Class java.security.SignatureException extends GeneralSecurityException implements Serializable

serialVersionUID:
  7509989324975124438L

### Class java.security.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.

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### content

    byte[] content

#### signature

    byte[] signature

#### thealgorithm

    String thealgorithm

### Class java.security.Signer extends Identity implements Serializable

serialVersionUID:
  -1763464102261361480L

### Serialized Fields

#### privateKey

    PrivateKey privateKey

Deprecated.
The signer's private key.

### Class java.security.Timestamp extends Object implements Serializable

serialVersionUID:
  -5502683707821851294L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream ois)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### timestamp

    Date timestamp

The timestamp's date and time

#### signerCertPath

    CertPath signerCertPath

The TSA's certificate path.

### Class java.security.UnrecoverableEntryException extends GeneralSecurityException implements Serializable

serialVersionUID:
  -4527142945246286535L

### Class java.security.UnrecoverableKeyException extends UnrecoverableEntryException implements Serializable

serialVersionUID:
  7275063078190151277L

### Class java.security.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).

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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.
Throws:
  `IOException`

### Serialized Fields

#### type

    String type

The class name of the Permission class that will be created when this unresolved permission is resolved.

#### name

    String name

The permission name.

#### actions

    String actions

The actions of the permission.

### Class java.security.UnresolvedPermissionCollection extends PermissionCollection implements Serializable

serialVersionUID:
  -7176153071733132400L

### 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 field.
Throws:
  `IOException`

### Serialized Fields

#### permissions

    Hashtable<K,V> permissions

A table of the UnresolvedPermissions keyed on type, value is Vector of permissions

## Package java.security.acl

### Class java.security.acl.AclNotFoundException extends Exception implements Serializable

serialVersionUID:
  5684295034092681791L

### Class java.security.acl.LastOwnerException extends Exception implements Serializable

serialVersionUID:
  -5141997548211140359L

### Class java.security.acl.NotOwnerException extends Exception implements Serializable

serialVersionUID:
  -5555597911163362399L

## Package java.security.cert

### Class java.security.cert.Certificate extends Object implements Serializable

serialVersionUID:
  -3585440601605666277L

### Serialization Methods

#### writeReplace

    protected Object writeReplace()
                           throws ObjectStreamException

Replace the Certificate to be serialized.

Throws:
  `ObjectStreamException` - if a new object representing this Certificate could not be created
Since:
  1.3

### Serialized Fields

#### type

    String type

#### hash

    int hash

Cache the hash code for the certiticate

### Class java.security.cert.Certificate.CertificateRep extends Object implements Serializable

serialVersionUID:
  -8563758940495660020L

### Serialization Methods

#### readResolve

    protected Object readResolve()
                          throws ObjectStreamException

Resolve the Certificate Object.

Throws:
  `ObjectStreamException` - if the Certificate could not be resolved

### Serialized Fields

#### type

    String type

#### data

    byte[] data

### Class java.security.cert.CertificateEncodingException extends CertificateException implements Serializable

serialVersionUID:
  6219492851589449162L

### Class java.security.cert.CertificateException extends GeneralSecurityException implements Serializable

serialVersionUID:
  3192535253797119798L

### Class java.security.cert.CertificateExpiredException extends CertificateException implements Serializable

serialVersionUID:
  9071001339691533771L

### Class java.security.cert.CertificateNotYetValidException extends CertificateException implements Serializable

serialVersionUID:
  4355919900041064702L

### Class java.security.cert.CertificateParsingException extends CertificateException implements Serializable

serialVersionUID:
  -7989222416793322029L

### Class java.security.cert.CertificateRevokedException extends CertificateException implements Serializable

serialVersionUID:
  7839996631571608627L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream ois)
                     throws IOException,
                            ClassNotFoundException

Deserialize the `CertificateRevokedException` instance.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream oos)
                      throws IOException

Serialize this `CertificateRevokedException` instance.

Serial Data:
  the size of the extensions map (int), followed by all of 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.
Throws:
  `IOException`

### Serialized Fields

#### revocationDate

    Date revocationDate

the date on which the certificate was revoked

#### reason

    CRLReason reason

the revocation reason

#### authority

    X500Principal authority

the `X500Principal` that represents the name of the authority that signed the certificate's revocation status information

### Class java.security.cert.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.

Throws:
  `ObjectStreamException` - if a `CertPathRep` object representing this certification path could not be created

### Serialized Fields

#### type

    String type

### Class java.security.cert.CertPath.CertPathRep extends Object implements Serializable

serialVersionUID:
  3015633072427920915L

### Serialization Methods

#### readResolve

    protected Object readResolve()
                          throws ObjectStreamException

Returns a `CertPath` constructed from the type and data.

Throws:
  `ObjectStreamException` - if a `CertPath` could not be constructed

### Serialized Fields

#### type

    String type

The Certificate type

#### data

    byte[] data

The encoded form of the cert path

### Class java.security.cert.CertPathBuilderException extends GeneralSecurityException implements Serializable

serialVersionUID:
  5316471420178794402L

### Class java.security.cert.CertPathValidatorException extends GeneralSecurityException implements Serializable

serialVersionUID:
  -3083180014971893139L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream stream)
                     throws ClassNotFoundException,
                            IOException

Throws:
  `ClassNotFoundException`
  `IOException`

### Serialized Fields

#### index

    int index

the index of the certificate in the certification path that caused the exception to be thrown

#### certPath

    CertPath certPath

the `CertPath` that was being validated when the exception was thrown

#### reason

    CertPathValidatorException.Reason reason

the reason the validation failed

### Class java.security.cert.CertStoreException extends GeneralSecurityException implements Serializable

serialVersionUID:
  2395296107471573245L

### Class java.security.cert.CRLException extends GeneralSecurityException implements Serializable

serialVersionUID:
  -6694728944094197147L

### Class java.security.cert.X509Certificate extends Certificate implements Serializable

serialVersionUID:
  -2491127588187038216L

## Package java.security.interfaces

## Package java.security.spec

### Class java.security.spec.InvalidKeySpecException extends GeneralSecurityException implements Serializable

serialVersionUID:
  3546139293998810778L

### Class java.security.spec.InvalidParameterSpecException extends GeneralSecurityException implements Serializable

serialVersionUID:
  -970468769593399342L

## Package java.sql

### Class java.sql.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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException,
                             ClassNotFoundException

writeObject is called to save the state of the `BatchUpdateException` to a stream.

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### updateCounts

    int[] updateCounts

The array that describes the outcome of a batch execution.

Since:
  1.2

#### longUpdateCounts

    long[] longUpdateCounts

The array that describes the outcome of a batch execution.

Since:
  1.8

### Class java.sql.DataTruncation extends SQLWarning implements Serializable

serialVersionUID:
  6464298989504059473L

### Serialized Fields

#### index

    int index

#### parameter

    boolean parameter

#### read

    boolean read

#### dataSize

    int dataSize

#### transferSize

    int transferSize

### Class java.sql.Date extends Date implements Serializable

serialVersionUID:
  1511598038487230103L

### Class java.sql.SQLClientInfoException extends SQLException implements Serializable

serialVersionUID:
  -4319604256824655880L

### Serialized Fields

#### failedProperties

    Map<K,V> failedProperties

### Class java.sql.SQLDataException extends SQLNonTransientException implements Serializable

serialVersionUID:
  -6889123282670549800L

### Class java.sql.SQLException extends Exception implements Serializable

serialVersionUID:
  2135244094396331484L

### Serialized Fields

#### SQLState

    String SQLState

#### vendorCode

    int vendorCode

#### next

    SQLException next

### Class java.sql.SQLFeatureNotSupportedException extends SQLNonTransientException implements Serializable

serialVersionUID:
  -1026510870282316051L

### Class java.sql.SQLIntegrityConstraintViolationException extends SQLNonTransientException implements Serializable

serialVersionUID:
  8033405298774849169L

### Class java.sql.SQLInvalidAuthorizationSpecException extends SQLNonTransientException implements Serializable

serialVersionUID:
  -64105250450891498L

### Class java.sql.SQLNonTransientConnectionException extends SQLNonTransientException implements Serializable

serialVersionUID:
  -5852318857474782892L

### Class java.sql.SQLNonTransientException extends SQLException implements Serializable

serialVersionUID:
  -9104382843534716547L

### Class java.sql.SQLPermission extends BasicPermission implements Serializable

serialVersionUID:
  -1439323187199563495L

### Class java.sql.SQLRecoverableException extends SQLException implements Serializable

serialVersionUID:
  -4144386502923131579L

### Class java.sql.SQLSyntaxErrorException extends SQLNonTransientException implements Serializable

serialVersionUID:
  -1843832610477496053L

### Class java.sql.SQLTimeoutException extends SQLTransientException implements Serializable

serialVersionUID:
  -4487171280562520262L

### Class java.sql.SQLTransactionRollbackException extends SQLTransientException implements Serializable

serialVersionUID:
  5246680841170837229L

### Class java.sql.SQLTransientConnectionException extends SQLTransientException implements Serializable

serialVersionUID:
  -2520155553543391200L

### Class java.sql.SQLTransientException extends SQLException implements Serializable

serialVersionUID:
  -9042733978262274539L

### Class java.sql.SQLWarning extends SQLException implements Serializable

serialVersionUID:
  3917336774604784856L

### Class java.sql.Time extends Date implements Serializable

serialVersionUID:
  8397324403548013681L

### Class java.sql.Timestamp extends Date implements Serializable

serialVersionUID:
  2745179027874758501L

### Serialized Fields

#### nanos

    int nanos

## Package java.text

### Class java.text.AttributedCharacterIterator.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 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

#### 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]`.

#### 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]`.

### Class java.text.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 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 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

#### eras

    String[] eras

Era strings. For example: "AD" and "BC". An array of 2 strings, indexed by `Calendar.BC` and `Calendar.AD`.

#### 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.

#### 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.

#### 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.

#### ampms

    String[] ampms

AM and PM strings. For example: "AM" and "PM". An array of 2 strings, indexed by `Calendar.AM` and `Calendar.PM`.

#### 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`

#### 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.

#### locale

    Locale locale

The locale which is used for initializing this DateFormatSymbols object.

Since:
  1.6

### Class java.text.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

#### 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()`

#### 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()`

#### 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

#### 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

#### multiplier

    int multiplier

The multiplier for use in percent, per mille, etc.

See Also:
  `DecimalFormat.getMultiplier()`

#### groupingSize

    byte groupingSize

The number of digits between grouping separators in the integer portion of a number. Must be greater than 0 if `NumberFormat.groupingUsed` is true.

See Also:
  `DecimalFormat.getGroupingSize()`, `NumberFormat.isGroupingUsed()`

#### 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()`

#### parseBigDecimal

    boolean parseBigDecimal

If true, parse returns BigDecimal wherever possible.

Since:
  1.5
See Also:
  `DecimalFormat.isParseBigDecimal()`

#### 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

#### 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

#### 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()`

#### 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()`

#### 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()`

#### 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()`

#### 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

### Class java.text.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`. 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:
  `IOException`
  `ClassNotFoundException`
Since:
  JDK 1.1.6

### Serialized Fields

#### zeroDigit

    char zeroDigit

Character used for zero.

See Also:
  `DecimalFormatSymbols.getZeroDigit()`

#### groupingSeparator

    char groupingSeparator

Character used for thousands separator.

See Also:
  `DecimalFormatSymbols.getGroupingSeparator()`

#### decimalSeparator

    char decimalSeparator

Character used for decimal sign.

See Also:
  `DecimalFormatSymbols.getDecimalSeparator()`

#### perMill

    char perMill

Character used for per mille sign.

See Also:
  `DecimalFormatSymbols.getPerMill()`

#### percent

    char percent

Character used for percent sign.

See Also:
  `DecimalFormatSymbols.getPercent()`

#### digit

    char digit

Character used for a digit in a pattern.

See Also:
  `DecimalFormatSymbols.getDigit()`

#### patternSeparator

    char patternSeparator

Character used to separate positive and negative subpatterns in a pattern.

See Also:
  `DecimalFormatSymbols.getPatternSeparator()`

#### infinity

    String infinity

String used to represent infinity.

See Also:
  `DecimalFormatSymbols.getInfinity()`

#### NaN

    String NaN

String used to represent "not a number".

See Also:
  `DecimalFormatSymbols.getNaN()`

#### minusSign

    char minusSign

Character used to represent minus sign.

See Also:
  `DecimalFormatSymbols.getMinusSign()`

#### currencySymbol

    String currencySymbol

String denoting the local currency, e.g. "$".

See Also:
  `DecimalFormatSymbols.getCurrencySymbol()`

#### intlCurrencySymbol

    String intlCurrencySymbol

ISO 4217 currency code denoting the local currency, e.g. "USD".

See Also:
  `DecimalFormatSymbols.getInternationalCurrencySymbol()`

#### monetarySeparator

    char monetarySeparator

The decimal separator used when formatting currency values.

Since:
  JDK 1.1.6
See Also:
  `DecimalFormatSymbols.getMonetaryDecimalSeparator()`

#### 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:
  JDK 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

#### locale

    Locale locale

The locale of these currency format symbols.

Since:
  1.4

#### 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.

When streaming out a `DecimalFormatSymbols`, the most recent format (corresponding to the highest allowable `serialVersionOnStream`) is always written.

Since:
  JDK 1.1.6

### Class java.text.Format extends Object implements Serializable

serialVersionUID:
  -299282585814624189L

### Class java.text.Format.Field extends AttributedCharacterIterator.Attribute implements Serializable

serialVersionUID:
  276966692217360283L

### Class java.text.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

#### locale

    Locale locale

The locale to use for formatting numbers and dates.

#### 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.

#### formats

    Format[] formats

An array of formatters, which are used to format the arguments.

#### offsets

    int[] offsets

The positions where the results of formatting each argument are to be inserted into the pattern.

#### 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.)

#### 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.

### Class java.text.MessageFormat.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 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()`

#### 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()`

#### 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()`

#### 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()`

#### 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()`

#### parseIntegerOnly

    boolean parseIntegerOnly

True if this format will parse numbers as integers only.

See Also:
  `NumberFormat.isParseIntegerOnly()`

#### 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()`

#### 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()`

#### 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()`

#### 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()`

#### 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 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.

### Class java.text.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 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

#### 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:
  JDK1.1.4

#### 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.

#### formatData

    DateFormatSymbols formatData

The symbols used by this formatter for week names, month names, etc. May not be null.

See Also:
  `DateFormatSymbols`

#### 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:
  JDK1.1.4

#### 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

## Package java.time

### Class java.time.DateTimeException extends RuntimeException implements Serializable

serialVersionUID:
  -1632418723876261839L

### Class java.time.Duration extends Object implements Serializable

serialVersionUID:
  3078945930695997490L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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

#### seconds

    long seconds

The number of seconds in the duration.

#### 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.

### Class java.time.Instant extends Object implements Serializable

serialVersionUID:
  -665713676816604388L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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

#### seconds

    long seconds

The number of seconds from the epoch of 1970-01-01T00:00:00Z.

#### 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.

### Class java.time.LocalDate extends Object implements Serializable

serialVersionUID:
  2942565459149668126L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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

#### year

    int year

The year.

#### month

    short month

The month-of-year.

#### day

    short day

The day-of-month.

### Class java.time.LocalDateTime extends Object implements Serializable

serialVersionUID:
  6207766400415563566L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends Object implements Serializable

serialVersionUID:
  6414437269572265201L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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.

#### second

    byte second

The second.

#### nano

    int nano

The nanosecond.

### Class java.time.MonthDay extends Object implements Serializable

serialVersionUID:
  -939150713474957432L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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

#### month

    int month

The month-of-year, not null.

#### day

    int day

The day-of-month.

### Class java.time.OffsetDateTime extends Object implements Serializable

serialVersionUID:
  2287754244819255394L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends Object implements Serializable

serialVersionUID:
  7264499704384272492L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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

#### time

    LocalTime time

The local date-time.

#### offset

    ZoneOffset offset

The offset from UTC/Greenwich.

### Class java.time.Period extends Object implements Serializable

serialVersionUID:
  -3587258372562876L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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

#### years

    int years

The number of years.

#### months

    int months

The number of months.

#### days

    int days

The number of days.

### Class java.time.Ser extends Object implements Serializable

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));`
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
Throws:
  `IOException` - Includes any I/O exceptions that may occur

### Class java.time.Year extends Object implements Serializable

serialVersionUID:
  -23038383694477807L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends Object implements Serializable

serialVersionUID:
  4183400860270640070L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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

#### year

    int year

The year.

#### month

    int month

The month-of-year, not null.

### Class java.time.ZonedDateTime extends Object implements Serializable

serialVersionUID:
  -6260982410461394882L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends Object implements Serializable

serialVersionUID:
  8352817235686L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends ZoneId implements Serializable

serialVersionUID:
  2357656521762053153L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends Object implements Serializable

serialVersionUID:
  4556003607393004514L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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.witeObject(toLocalTime());

### Class java.time.chrono.ChronoZonedDateTimeImpl extends Object implements Serializable

serialVersionUID:
  -5261813987200935591L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends AbstractChronology implements Serializable

serialVersionUID:
  3127340209035924785L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends java.time.chrono.ChronoLocalDateImpl<HijrahDate> implements Serializable

serialVersionUID:
  -5207853542612002020L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends AbstractChronology implements Serializable

serialVersionUID:
  -1440403870442975015L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends AbstractChronology implements Serializable

serialVersionUID:
  459996390165777884L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends java.time.chrono.ChronoLocalDateImpl<JapaneseDate> implements Serializable

serialVersionUID:
  -305327627230580483L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends Object implements Serializable

serialVersionUID:
  1466499369062886794L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends AbstractChronology implements Serializable

serialVersionUID:
  1039765215346859963L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends java.time.chrono.ChronoLocalDateImpl<MinguoDate> implements Serializable

serialVersionUID:
  1300372329181994526L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends Object implements Serializable

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)
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
Throws:
  `IOException` - Includes any I/O exceptions that may occur

### Class java.time.chrono.ThaiBuddhistChronology extends AbstractChronology implements Serializable

serialVersionUID:
  2775954514031616474L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 extends java.time.chrono.ChronoLocalDateImpl<ThaiBuddhistDate> implements Serializable

serialVersionUID:
  -8722293800195731463L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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

### Class java.time.format.DateTimeParseException extends DateTimeException implements Serializable

serialVersionUID:
  4304633501674722597L

### Serialized Fields

#### parsedString

    String parsedString

The text that was being parsed.

#### errorIndex

    int errorIndex

The error index in the text.

## Package java.time.temporal

### Class java.time.temporal.UnsupportedTemporalTypeException extends DateTimeException implements Serializable

serialVersionUID:
  -6158898438688206006L

### Class java.time.temporal.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.

Throws:
  `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
  `IOException`

### Serialized Fields

#### minSmallest

    long minSmallest

The smallest minimum value.

#### minLargest

    long minLargest

The largest minimum value.

#### maxSmallest

    long maxSmallest

The smallest maximum value.

#### maxLargest

    long maxLargest

The largest maximum value.

### Class java.time.temporal.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.

Throws:
  `InvalidObjectException` - if the serialized object has an invalid value for firstDayOfWeek or minimalDays.
  `ClassNotFoundException` - if a class cannot be resolved
  `IOException`

#### 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 extends Object implements Serializable

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);`
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
Throws:
  `IOException` - Includes any I/O exceptions that may occur

### Class java.time.zone.ZoneOffsetTransition extends Object implements Serializable

serialVersionUID:
  -6946044323557704546L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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

#### transition

    LocalDateTime transition

The local transition date-time at the transition.

#### offsetBefore

    ZoneOffset offsetBefore

The offset before transition.

#### offsetAfter

    ZoneOffset offsetAfter

The offset after transition.

### Class java.time.zone.ZoneOffsetTransitionRule extends Object implements Serializable

serialVersionUID:
  6889046316657758795L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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 ZoneOffsetTransition
            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

#### 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.

#### 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.

#### time

    LocalTime time

The cutover time in the 'before' offset.

#### timeEndOfDay

    boolean timeEndOfDay

Whether the cutover time is midnight at the end of day.

#### timeDefinition

    ZoneOffsetTransitionRule.TimeDefinition timeDefinition

The definition of how the local time should be interpreted.

#### standardOffset

    ZoneOffset standardOffset

The standard offset at the cutover.

#### offsetBefore

    ZoneOffset offsetBefore

The offset before the cutover.

#### offsetAfter

    ZoneOffset offsetAfter

The offset after the cutover.

### Class java.time.zone.ZoneRules extends Object implements Serializable

serialVersionUID:
  3044319355680032515L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Defend against malicious streams.

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

#### standardTransitions

    long[] standardTransitions

The transitions between standard offsets (epoch seconds), sorted.

#### standardOffsets

    ZoneOffset[] standardOffsets

The standard offsets.

#### 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.

#### wallOffsets

    ZoneOffset[] wallOffsets

The wall offsets.

#### lastRules

    ZoneOffsetTransitionRule[] lastRules

The last rule.

### Class java.time.zone.ZoneRulesException extends DateTimeException implements Serializable

serialVersionUID:
  -1632418723876261839L

## Package java.util

### Class java.util.AbstractMap.SimpleEntry extends Object implements Serializable

serialVersionUID:
  -8499721149061103585L

### Serialized Fields

#### key

    Object key

#### value

    Object value

### Class java.util.AbstractMap.SimpleImmutableEntry extends Object implements Serializable

serialVersionUID:
  7138329143949025153L

### Serialized Fields

#### key

    Object key

#### value

    Object value

### Class java.util.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).

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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.
Throws:
  `IOException`

### Class java.util.ArrayList extends AbstractList<E> implements Serializable

serialVersionUID:
  8683452581122892189L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Reconstitute the `ArrayList` instance from a stream (that is, deserialize it).

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Save the state of the `ArrayList` instance to a stream (that is, serialize 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.
Throws:
  `IOException`

### Serialized Fields

#### size

    int size

The size of the ArrayList (the number of elements it contains).

### Class java.util.Arrays.ArrayList extends AbstractList<E> implements Serializable

serialVersionUID:
  -2764017481108945198L

### Serialized Fields

#### a

    Object[] a

### Class java.util.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 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

#### 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`.

#### 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`.

#### 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`

#### 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`

#### 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`.

#### 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()`

#### zone

    TimeZone zone

The `TimeZone` used by this calendar. `Calendar` uses the time zone data to translate between locale and GMT time.

#### firstDayOfWeek

    int firstDayOfWeek

The first day of the week, with possible values `SUNDAY`, `MONDAY`, etc. This is a locale-dependent value.

#### 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:
  JDK1.1.6

### Class java.util.Collections.AsLIFOQueue extends AbstractQueue<E> implements Serializable

serialVersionUID:
  1802017725587941708L

### Serialized Fields

#### q

    Deque<E> q

### Class java.util.Collections.CheckedCollection extends Object implements Serializable

serialVersionUID:
  1578914078182001775L

### Serialized Fields

#### c

    Collection<E> c

#### type

    Class<T> type

#### zeroLengthElementArray

    Object[] zeroLengthElementArray

### Class java.util.Collections.CheckedList extends java.util.Collections.CheckedCollection<E> implements Serializable

serialVersionUID:
  65247728283967356L

### Serialized Fields

#### list

    List<E> list

### Class java.util.Collections.CheckedMap extends Object implements Serializable

serialVersionUID:
  5742860141034234728L

### Serialized Fields

#### m

    Map<K,V> m

#### keyType

    Class<T> keyType

#### valueType

    Class<T> valueType

### Class java.util.Collections.CheckedNavigableMap extends java.util.Collections.CheckedSortedMap<K,V> implements Serializable

serialVersionUID:
  -4852462692372534096L

### Serialized Fields

#### nm

    NavigableMap<K,V> nm

### Class java.util.Collections.CheckedNavigableSet extends java.util.Collections.CheckedSortedSet<E> implements Serializable

serialVersionUID:
  -5429120189805438922L

### Serialized Fields

#### ns

    NavigableSet<E> ns

### Class java.util.Collections.CheckedQueue extends java.util.Collections.CheckedCollection<E> implements Serializable

serialVersionUID:
  1433151992604707767L

### Serialized Fields

#### queue

    Queue<E> queue

### Class java.util.Collections.CheckedRandomAccessList extends java.util.Collections.CheckedList<E> implements Serializable

serialVersionUID:
  1638200125423088369L

### Class java.util.Collections.CheckedSet extends java.util.Collections.CheckedCollection<E> implements Serializable

serialVersionUID:
  4694047833775013803L

### Class java.util.Collections.CheckedSortedMap extends java.util.Collections.CheckedMap<K,V> implements Serializable

serialVersionUID:
  1599671320688067438L

### Serialized Fields

#### sm

    SortedMap<K,V> sm

### Class java.util.Collections.CheckedSortedSet extends java.util.Collections.CheckedSet<E> implements Serializable

serialVersionUID:
  1599911165492914959L

### Serialized Fields

#### ss

    SortedSet<E> ss

### Class java.util.Collections.CopiesList extends AbstractList<E> implements Serializable

serialVersionUID:
  2739099268398711800L

### Serialized Fields

#### n

    int n

#### element

    Object element

### Class java.util.Collections.EmptyList extends AbstractList<E> implements Serializable

serialVersionUID:
  8842843931221139166L

### Serialization Methods

#### readResolve

    private Object readResolve()

### Class java.util.Collections.EmptyMap extends AbstractMap<K,V> implements Serializable

serialVersionUID:
  6428348081105594320L

### Serialization Methods

#### readResolve

    private Object readResolve()

### Class java.util.Collections.EmptySet extends AbstractSet<E> implements Serializable

serialVersionUID:
  1582296315990362920L

### Serialization Methods

#### readResolve

    private Object readResolve()

### Class java.util.Collections.ReverseComparator extends Object implements Serializable

serialVersionUID:
  7207038068494060240L

### Serialization Methods

#### readResolve

    private Object readResolve()

### Class java.util.Collections.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 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<K,V> m

### Class java.util.Collections.SingletonList extends AbstractList<E> implements Serializable

serialVersionUID:
  3093736618740652951L

### Serialized Fields

#### element

    Object element

### Class java.util.Collections.SingletonMap extends AbstractMap<K,V> implements Serializable

serialVersionUID:
  -6979724477215052911L

### Serialized Fields

#### k

    Object k

#### v

    Object v

### Class java.util.Collections.SingletonSet extends AbstractSet<E> implements Serializable

serialVersionUID:
  3193687207550431679L

### Serialized Fields

#### element

    Object element

### Class java.util.Collections.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 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 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 extends java.util.Collections.SynchronizedSortedMap<K,V> implements Serializable

serialVersionUID:
  699392247599746807L

### Serialized Fields

#### nm

    NavigableMap<K,V> nm

### Class java.util.Collections.SynchronizedNavigableSet extends java.util.Collections.SynchronizedSortedSet<E> implements Serializable

serialVersionUID:
  -5505529816273629798L

### Serialized Fields

#### ns

    NavigableSet<E> ns

### Class java.util.Collections.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 extends java.util.Collections.SynchronizedCollection<E> implements Serializable

serialVersionUID:
  487447009682186044L

### Class java.util.Collections.SynchronizedSortedMap extends java.util.Collections.SynchronizedMap<K,V> implements Serializable

serialVersionUID:
  -8798146769416483793L

### Serialized Fields

#### sm

    SortedMap<K,V> sm

### Class java.util.Collections.SynchronizedSortedSet extends java.util.Collections.SynchronizedSet<E> implements Serializable

serialVersionUID:
  8695801310862127406L

### Serialized Fields

#### ss

    SortedSet<E> ss

### Class java.util.Collections.UnmodifiableCollection extends Object implements Serializable

serialVersionUID:
  1820017752578914078L

### Serialized Fields

#### c

    Collection<E> c

### Class java.util.Collections.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<E> list

### Class java.util.Collections.UnmodifiableMap extends Object implements Serializable

serialVersionUID:
  -1034234728574286014L

### Serialized Fields

#### m

    Map<K,V> m

### Class java.util.Collections.UnmodifiableMap.UnmodifiableEntrySet extends java.util.Collections.UnmodifiableSet<Map.Entry<K,V>> implements Serializable

serialVersionUID:
  7854390611657943733L

### Class java.util.Collections.UnmodifiableNavigableMap extends java.util.Collections.UnmodifiableSortedMap<K,V> implements Serializable

serialVersionUID:
  -4858195264774772197L

### Serialized Fields

#### nm

    NavigableMap<K,V> nm

The instance we wrap and protect.

### Class java.util.Collections.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 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 extends java.util.Collections.UnmodifiableCollection<E> implements Serializable

serialVersionUID:
  -9215047833775013803L

### Class java.util.Collections.UnmodifiableSortedMap extends java.util.Collections.UnmodifiableMap<K,V> implements Serializable

serialVersionUID:
  -8806743815996713206L

### Serialized Fields

#### sm

    SortedMap<K,V> sm

### Class java.util.Collections.UnmodifiableSortedSet extends java.util.Collections.UnmodifiableSet<E> implements Serializable

serialVersionUID:
  -4929149591599911165L

### Serialized Fields

#### ss

    SortedSet<E> ss

### Class java.util.ConcurrentModificationException extends RuntimeException implements Serializable

serialVersionUID:
  -3666751008965953603L

### Class java.util.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 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`

### Class java.util.DuplicateFormatFlagsException extends IllegalFormatException implements Serializable

serialVersionUID:
  18890531L

### Serialized Fields

#### flags

    String flags

### Class java.util.EmptyStackException extends RuntimeException implements Serializable

serialVersionUID:
  5084686378493302095L

### Class java.util.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<T> keyType

The `Class` object for the enum type of all the keys of this map.

### Class java.util.EnumSet.SerializationProxy extends Object implements Serializable

serialVersionUID:
  362491234563181265L

### Serialization Methods

#### readResolve

    private Object readResolve()

### Serialized Fields

#### elementType

    Class<T> elementType

The element type of this enum set.

#### elements

    Enum<E extends Enum<E>>[] elements

The elements contained in this enum set.

### Class java.util.EventObject extends Object implements Serializable

serialVersionUID:
  5516075349620653480L

### Class java.util.FormatFlagsConversionMismatchException extends IllegalFormatException implements Serializable

serialVersionUID:
  19120414L

### Serialized Fields

#### f

    String f

#### c

    char c

### Class java.util.FormatterClosedException extends IllegalStateException implements Serializable

serialVersionUID:
  18111216L

### Class java.util.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 extends AbstractMap<K,V> implements Serializable

serialVersionUID:
  362498820763181265L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Reconstitute the `HashMap` instance from a stream (i.e., deserialize it).

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Save the state of the `HashMap` instance to a stream (i.e., serialize 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.
Throws:
  `IOException`

### Serialized Fields

#### threshold

    int threshold

The next size value at which to resize (capacity * load factor).

#### loadFactor

    float loadFactor

The load factor for the hash table.

### Class java.util.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 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

#### threshold

    int threshold

The table is rehashed when its size exceeds this threshold. (The value of this field is (int)(capacity * loadFactor).)

#### loadFactor

    float loadFactor

The load factor for the hashtable.

### Class java.util.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.

### Class java.util.IllegalFormatCodePointException extends IllegalFormatException implements Serializable

serialVersionUID:
  19080630L

### Serialized Fields

#### c

    int c

### Class java.util.IllegalFormatConversionException extends IllegalFormatException implements Serializable

serialVersionUID:
  17000126L

### Serialized Fields

#### c

    char c

#### arg

    Class<T> arg

### Class java.util.IllegalFormatException extends IllegalArgumentException implements Serializable

serialVersionUID:
  18830826L

### Class java.util.IllegalFormatFlagsException extends IllegalFormatException implements Serializable

serialVersionUID:
  790824L

### Serialized Fields

#### flags

    String flags

### Class java.util.IllegalFormatPrecisionException extends IllegalFormatException implements Serializable

serialVersionUID:
  18711008L

### Serialized Fields

#### p

    int p

### Class java.util.IllegalFormatWidthException extends IllegalFormatException implements Serializable

serialVersionUID:
  16660902L

### Serialized Fields

#### w

    int w

### Class java.util.IllformedLocaleException extends RuntimeException implements Serializable

serialVersionUID:
  -5245986824925681401L

### Serialized Fields

#### _errIdx

    int _errIdx

### Class java.util.InputMismatchException extends NoSuchElementException implements Serializable

serialVersionUID:
  8811230760997066428L

### Class java.util.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 extends HashSet<E> implements Serializable

serialVersionUID:
  -2851667679971038690L

### Class java.util.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 extends Object implements Serializable

serialVersionUID:
  9149081749638150636L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream in)
                     throws IOException,
                            ClassNotFoundException

Deserializes this `Locale`.

Throws:
  `IOException`
  `ClassNotFoundException`
  `IllformedLocaleException`
Since:
  1.7

#### writeObject

    private void writeObject(ObjectOutputStream out)
                      throws IOException

Serializes this `Locale` to the specified `ObjectOutputStream`.

Throws:
  `IOException`
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`

### Serialized Fields

#### country

    String country

country subtag in upper case. (See 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 getExtensionKeys(), getExtension(char))

#### hashcode

    int hashcode

deprecated, for forward compatibility only

#### language

    String language

language subtag in lower case. (See getLanguage())

#### script

    String script

script subtag in title case (See getScript())

#### variant

    String variant

variant subtags separated by LOWLINE characters. (See getVariant())

### Class java.util.MissingFormatArgumentException extends IllegalFormatException implements Serializable

serialVersionUID:
  19190115L

### Serialized Fields

#### s

    String s

### Class java.util.MissingFormatWidthException extends IllegalFormatException implements Serializable

serialVersionUID:
  15560123L

### Serialized Fields

#### s

    String s

### Class java.util.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.

### Class java.util.NoSuchElementException extends RuntimeException implements Serializable

serialVersionUID:
  6769829250639411880L

### Class java.util.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).

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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.
Throws:
  `IOException`

### Serialized Fields

#### size

    int size

The number of elements in the priority queue.

#### comparator

    Comparator<T> comparator

The comparator, or null if priority queue uses elements' natural ordering.

### Class java.util.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 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<K,V> permissions

A table of the PropertyPermissions.

### Class java.util.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).

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Save the `Random` instance to a stream.

Throws:
  `IOException`

### 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

### Class java.util.ServiceConfigurationError extends Error implements Serializable

serialVersionUID:
  74132770414881L

### Class java.util.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

#### 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.

#### 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.

#### 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

#### 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.

#### 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.

#### 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

#### 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.

#### 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`.

#### 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.

#### 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.

#### 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

#### 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

#### 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

#### 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

### Class java.util.Stack extends Vector<E> implements Serializable

serialVersionUID:
  1224463164541339165L

### Class java.util.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.

### Class java.util.TooManyListenersException extends Exception implements Serializable

serialVersionUID:
  5074640544770687831L

### Class java.util.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<T> 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 extends java.util.TreeMap.NavigableSubMap<K,V> implements Serializable

serialVersionUID:
  912986545866124060L

### Class java.util.TreeMap.DescendingSubMap extends java.util.TreeMap.NavigableSubMap<K,V> implements Serializable

serialVersionUID:
  912986545866120460L

### Serialized Fields

#### reverseComparator

    Comparator<T> reverseComparator

### Class java.util.TreeMap.NavigableSubMap extends AbstractMap<K,V> implements Serializable

serialVersionUID:
  -2102997345730753016L

### Serialized Fields

#### m

    TreeMap<K,V> m

The backing map.

#### lo

    Object 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.

#### hi

    Object hi

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.

#### fromStart

    boolean fromStart

#### toEnd

    boolean toEnd

#### loInclusive

    boolean loInclusive

#### hiInclusive

    boolean hiInclusive

### Class java.util.TreeMap.SubMap extends AbstractMap<K,V> implements Serializable

serialVersionUID:
  -6520786458950516097L

### Serialization Methods

#### readResolve

    private Object readResolve()

### Serialized Fields

#### fromStart

    boolean fromStart

#### toEnd

    boolean toEnd

#### fromKey

    Object fromKey

#### toKey

    Object toKey

### Class java.util.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`

### Class java.util.UnknownFormatConversionException extends IllegalFormatException implements Serializable

serialVersionUID:
  19060418L

### Serialized Fields

#### s

    String s

### Class java.util.UnknownFormatFlagsException extends IllegalFormatException implements Serializable

serialVersionUID:
  19370506L

### Serialized Fields

#### flags

    String flags

### Class java.util.UUID extends Object implements Serializable

serialVersionUID:
  -4856846361193249489L

### Serialized Fields

#### mostSigBits

    long mostSigBits

#### leastSigBits

    long leastSigBits

### Class java.util.Vector extends AbstractList<E> implements Serializable

serialVersionUID:
  -2767605614048989439L

### Serialization Methods

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Save the state of the `Vector` instance to a stream (that is, serialize it). This method performs synchronization to ensure the consistency of the serialized data.

Throws:
  `IOException`

### Serialized Fields

#### 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.

#### elementCount

    int elementCount

The number of valid components in this `Vector` object. Components `elementData[0]` through `elementData[elementCount-1]` are the actual items.

#### 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.

## Package java.util.concurrent

### Class java.util.concurrent.ArrayBlockingQueue extends AbstractQueue<E> implements Serializable

serialVersionUID:
  -817911632652898426L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Deserializes this queue and then checks some invariants.

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

#### items

    Object[] items

The queued items

#### takeIndex

    int takeIndex

items index for next take, poll, peek or remove

#### putIndex

    int putIndex

items index for next put, offer, or add

#### count

    int count

Number of elements in the queue

#### 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.BrokenBarrierException extends Exception implements Serializable

serialVersionUID:
  7117394618823254244L

### Class java.util.concurrent.CancellationException extends IllegalStateException implements Serializable

serialVersionUID:
  -9202173006928992231L

### Class java.util.concurrent.CompletionException extends RuntimeException implements Serializable

serialVersionUID:
  7830266012832686185L

### Class java.util.concurrent.ConcurrentHashMap extends AbstractMap<K,V> implements Serializable

serialVersionUID:
  7249069246763182397L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Reconstitutes the instance from a stream (that is, deserializes it).

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 `ConcurrentHashMap` instance to a stream (i.e., serializes it).

Serial Data:
  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.
Throws:
  `IOException` - if an I/O error occurs

### Serialization Overview

For serialization compatibility.

### Class java.util.concurrent.ConcurrentHashMap.KeySetView extends java.util.concurrent.ConcurrentHashMap.CollectionView<K,V,K> implements Serializable

serialVersionUID:
  7249069246763182397L

### Serialized Fields

#### value

    Object value

### Class java.util.concurrent.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).

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
Throws:
  `IOException` - if an I/O error occurs

### Class java.util.concurrent.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).

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
Throws:
  `IOException` - if an I/O error occurs

### Class java.util.concurrent.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).

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).
Throws:
  `IOException` - if an I/O error occurs

### Serialized Fields

#### comparator

    Comparator<T> 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 extends AbstractMap<K,V> implements Serializable

serialVersionUID:
  -7647078645895051609L

### Serialized Fields

#### m

    ConcurrentSkipListMap<K,V> m

Underlying map

#### lo

    Object lo

lower bound key, or null if from start

#### hi

    Object hi

upper bound key, or null if to end

#### loInclusive

    boolean loInclusive

inclusion flag for lo

#### hiInclusive

    boolean hiInclusive

inclusion flag for hi

#### isDescending

    boolean isDescending

direction

### Class java.util.concurrent.ConcurrentSkipListSet extends AbstractSet<E> implements Serializable

serialVersionUID:
  -2479143111061671589L

### Serialized Fields

#### m

    ConcurrentNavigableMap<K,V> 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 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).

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.
Throws:
  `IOException` - if an I/O error occurs

### Class java.util.concurrent.CopyOnWriteArraySet extends AbstractSet<E> implements Serializable

serialVersionUID:
  5457747651344034263L

### Serialized Fields

#### al

    CopyOnWriteArrayList<E> al

### Class java.util.concurrent.CountedCompleter extends ForkJoinTask<T> implements Serializable

serialVersionUID:
  5232453752276485070L

### Serialized Fields

#### completer

    CountedCompleter<T> completer

This task's completer, or null if none

#### pending

    int pending

The number of pending tasks until completion

### Class java.util.concurrent.ExecutionException extends Exception implements Serializable

serialVersionUID:
  7830266012832686185L

### Class java.util.concurrent.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).

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
Throws:
  `IOException` - if an I/O error occurs

### Serialized Fields

#### status

    int status

The run status of this task

### Class java.util.concurrent.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).

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
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 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).

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
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

#### takeLock

    ReentrantLock takeLock

Lock held by take, poll, etc

#### notEmpty

    Condition notEmpty

Wait queue for waiting takes

#### putLock

    ReentrantLock putLock

Lock held by put, offer, etc

#### notFull

    Condition notFull

Wait queue for waiting puts

### Class java.util.concurrent.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).

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
Throws:
  `IOException` - if an I/O error occurs

### Class java.util.concurrent.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).

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.

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 extends ForkJoinTask<Void> implements Serializable

serialVersionUID:
  5232453952276485070L

### Class java.util.concurrent.RecursiveTask extends ForkJoinTask<V> implements Serializable

serialVersionUID:
  5232453952276485270L

### Serialized Fields

#### result

    Object result

The result of the computation.

### Class java.util.concurrent.RejectedExecutionException extends RuntimeException implements Serializable

serialVersionUID:
  -375805702767069545L

### Class java.util.concurrent.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 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).

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).

Throws:
  `IOException` - if an I/O error occurs

### Serialized Fields

#### qlock

    ReentrantLock qlock

#### waitingProducers

    java.util.concurrent.SynchronousQueue.WaitQueue waitingProducers

#### waitingConsumers

    java.util.concurrent.SynchronousQueue.WaitQueue waitingConsumers

### Class java.util.concurrent.ThreadLocalRandom extends Random implements Serializable

serialVersionUID:
  -5851777807851030925L

### Serialization Methods

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Saves the `ThreadLocalRandom` to a stream (that is, serializes it).

Throws:
  `IOException` - if an I/O error occurs

#### readResolve

    private Object readResolve()

Returns the `current` thread's `ThreadLocalRandom`.

### Serialized Fields

#### initialized

    boolean initialized

always true

#### rnd

    long rnd

seed for random computations

### Class java.util.concurrent.TimeoutException extends Exception implements Serializable

serialVersionUID:
  1900926677490660714L

## Package java.util.concurrent.atomic

### Class java.util.concurrent.atomic.AtomicBoolean extends Object implements Serializable

serialVersionUID:
  4654671469794556979L

### Serialized Fields

#### value

    int value

### Class java.util.concurrent.atomic.AtomicInteger extends Number implements Serializable

serialVersionUID:
  6214790243416807050L

### Serialized Fields

#### value

    int value

### Class java.util.concurrent.atomic.AtomicIntegerArray extends Object implements Serializable

serialVersionUID:
  2862133569453604235L

### Serialized Fields

#### array

    int[] array

### Class java.util.concurrent.atomic.AtomicLong extends Number implements Serializable

serialVersionUID:
  1927816293512124184L

### Serialized Fields

#### value

    long value

### Class java.util.concurrent.atomic.AtomicLongArray extends Object implements Serializable

serialVersionUID:
  -2308431214976778248L

### Serialized Fields

#### array

    long[] array

### Class java.util.concurrent.atomic.AtomicReference extends Object implements Serializable

serialVersionUID:
  -1848883965231344442L

### Serialized Fields

#### value

    Object value

### Class java.util.concurrent.atomic.AtomicReferenceArray extends Object implements Serializable

serialVersionUID:
  -6209656149925076980L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException,
                            InvalidObjectException

Reconstitutes the instance from a stream (that is, deserializes it).

Throws:
  `IOException`
  `ClassNotFoundException`
  `InvalidObjectException`

### Serialized Fields

#### array

    Object[] array

### Class java.util.concurrent.atomic.DoubleAccumulator extends java.util.concurrent.atomic.Striped64 implements Serializable

serialVersionUID:
  7249069246863182397L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

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 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

#### value

    double value

The current value returned by get().

#### function

    DoubleBinaryOperator function

The function used for updates.

#### identity

    long identity

The identity value

### Class java.util.concurrent.atomic.DoubleAdder extends java.util.concurrent.atomic.Striped64 implements Serializable

serialVersionUID:
  7249069246863182397L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Throws:
  `InvalidObjectException` - always

#### writeReplace

    private Object writeReplace()

Returns a SerializationProxy representing the state of this instance.

### Class java.util.concurrent.atomic.DoubleAdder.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 extends java.util.concurrent.atomic.Striped64 implements Serializable

serialVersionUID:
  7249069246863182397L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

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 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

#### value

    long value

The current value returned by get().

#### function

    LongBinaryOperator function

The function used for updates.

#### identity

    long identity

The identity value

### Class java.util.concurrent.atomic.LongAdder extends java.util.concurrent.atomic.Striped64 implements Serializable

serialVersionUID:
  7249069246863182397L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws InvalidObjectException

Throws:
  `InvalidObjectException` - always

#### writeReplace

    private Object writeReplace()

Returns a SerializationProxy representing the state of this instance.

### Class java.util.concurrent.atomic.LongAdder.SerializationProxy extends Object implements Serializable

serialVersionUID:
  7249069246863182397L

### Serialization Methods

#### readResolve

    private Object readResolve()

Return 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 extends Object implements Serializable

serialVersionUID:
  3737899427754241961L

### Class java.util.concurrent.locks.AbstractQueuedLongSynchronizer extends AbstractOwnableSynchronizer implements Serializable

serialVersionUID:
  7373984972572414692L

### Serialized Fields

#### state

    long state

The synchronization state.

### Class java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject extends Object implements Serializable

serialVersionUID:
  1173984872572414699L

### Class java.util.concurrent.locks.AbstractQueuedSynchronizer extends AbstractOwnableSynchronizer implements Serializable

serialVersionUID:
  7373984972572414691L

### Serialized Fields

#### state

    int state

The synchronization state.

### Class java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject extends Object implements Serializable

serialVersionUID:
  1173984872572414699L

### Class java.util.concurrent.locks.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 extends Object implements Serializable

serialVersionUID:
  -6992448646407690164L

### Serialized Fields

#### readerLock

    ReentrantReadWriteLock.ReadLock readerLock

Inner class providing readlock

#### writerLock

    ReentrantReadWriteLock.WriteLock writerLock

Inner class providing writelock

#### sync

    java.util.concurrent.locks.ReentrantReadWriteLock.Sync sync

Performs all synchronization mechanics

### Class java.util.concurrent.locks.ReentrantReadWriteLock.ReadLock extends Object implements Serializable

serialVersionUID:
  -5992448646407690164L

### Serialized Fields

#### sync

    java.util.concurrent.locks.ReentrantReadWriteLock.Sync sync

### Class java.util.concurrent.locks.ReentrantReadWriteLock.WriteLock extends Object implements Serializable

serialVersionUID:
  -4992448646407690164L

### Serialized Fields

#### sync

    java.util.concurrent.locks.ReentrantReadWriteLock.Sync sync

### Class java.util.concurrent.locks.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

### Class java.util.jar.JarException extends ZipException implements Serializable

serialVersionUID:
  7159778400963954473L

## Package java.util.logging

### Class java.util.logging.Level extends Object implements Serializable

serialVersionUID:
  -8176160795706313070L

### Serialization Methods

#### readResolve

    private Object readResolve()

### Serialized Fields

#### name

    String name

The non-localized name of the level.

#### value

    int value

The integer value of the level.

#### resourceBundleName

    String resourceBundleName

The resource bundle name to be used in localizing the level name.

### Class java.util.logging.LoggingPermission extends BasicPermission implements Serializable

serialVersionUID:
  63564341580231582L

### Class java.util.logging.LogRecord extends Object implements Serializable

serialVersionUID:
  5372048053134512534L

### 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, 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.
Throws:
  `IOException`

### Serialized Fields

#### level

    Level level

Logging message level

#### sequenceNumber

    long sequenceNumber

Sequence number

#### sourceClassName

    String sourceClassName

Class that issued logging call

#### sourceMethodName

    String sourceMethodName

Method that issued logging call

#### message

    String message

Non-localized raw message text

#### threadID

    int threadID

Thread ID for thread that issued logging call.

#### millis

    long millis

Event time in milliseconds since 1970

#### thrown

    Throwable thrown

The Throwable (if any) associated with log message

#### loggerName

    String loggerName

Name of the source Logger.

#### resourceBundleName

    String resourceBundleName

Resource bundle name to localized log message.

## Package java.util.prefs

### Class java.util.prefs.BackingStoreException extends Exception implements Serializable

serialVersionUID:
  859796500401108469L

### Class java.util.prefs.InvalidPreferencesFormatException extends Exception implements Serializable

serialVersionUID:
  -791715184232119669L

## Package java.util.regex

### Class java.util.regex.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

#### pattern

    String pattern

The original regular-expression pattern string.

#### flags

    int flags

The original pattern flags.

### Class java.util.regex.PatternSyntaxException extends IllegalArgumentException implements Serializable

serialVersionUID:
  -3864639126226059218L

### Serialized Fields

#### desc

    String desc

#### pattern

    String pattern

#### index

    int index

## Package java.util.zip

### Class java.util.zip.DataFormatException extends Exception implements Serializable

serialVersionUID:
  2219632870893641452L

### Class java.util.zip.ZipError extends InternalError implements Serializable

serialVersionUID:
  853973422266861979L

### Class java.util.zip.ZipException extends IOException implements Serializable

serialVersionUID:
  8000196834066748623L

## Package javax.activation

### Class javax.activation.ActivationDataFlavor extends DataFlavor implements Serializable

### Serialization Methods

#### readExternal

    public void readExternal(ObjectInput is)
                      throws IOException,
                             ClassNotFoundException

Restores this `DataFlavor` from a Serialized state.

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`.

Throws:
  `IOException` - Includes any I/O exceptions that may occur

### Class javax.activation.MimeType extends Object implements Serializable

### Serialization Methods

#### readExternal

    public void readExternal(ObjectInput in)
                      throws IOException,
                             ClassNotFoundException

The object implements the readExternal method to restore its contents by calling the methods of DataInput for primitive types and readObject for objects, strings and arrays. The readExternal method must read the values in the same sequence and with the same types as were written by writeExternal.

Throws:
  `ClassNotFoundException` - If the class for an object being restored cannot be found.
  `IOException` - if I/O errors occur

#### writeExternal

    public void writeExternal(ObjectOutput out)
                       throws IOException

The object implements the writeExternal method to save its contents by calling the methods of DataOutput for its primitive values or calling the writeObject method of ObjectOutput for objects, strings and arrays.

Throws:
  `IOException` - Includes any I/O exceptions that may occur

### Class javax.activation.MimeTypeParseException extends Exception implements Serializable

### Class javax.activation.UnsupportedDataTypeException extends IOException implements Serializable

## Package javax.activity

### Class javax.activity.ActivityCompletedException extends RemoteException implements Serializable

### Class javax.activity.ActivityRequiredException extends RemoteException implements Serializable

### Class javax.activity.InvalidActivityException extends RemoteException implements Serializable

## Package javax.annotation.processing

### Class javax.annotation.processing.FilerException extends IOException implements Serializable

serialVersionUID:
  8426423106453163293L

## Package javax.crypto

### Class javax.crypto.AEADBadTagException extends BadPaddingException implements Serializable

serialVersionUID:
  -488059093241685509L

### Class javax.crypto.BadPaddingException extends GeneralSecurityException implements Serializable

serialVersionUID:
  -5315033893984728443L

### Class javax.crypto.ExemptionMechanismException extends GeneralSecurityException implements Serializable

serialVersionUID:
  1572699429277957109L

### Class javax.crypto.IllegalBlockSizeException extends GeneralSecurityException implements Serializable

serialVersionUID:
  -1965144811953540392L

### Class javax.crypto.NoSuchPaddingException extends GeneralSecurityException implements Serializable

serialVersionUID:
  -4572885201200175466L

### Class javax.crypto.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.

Throws:
  `NullPointerException` - if s is null.
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### encryptedContent

    byte[] encryptedContent

The serialized object contents in encrypted format.

#### sealAlg

    String sealAlg

The algorithm that was used to seal this object.

#### paramsAlg

    String paramsAlg

The algorithm of the parameters used.

#### encodedParams

    byte[] encodedParams

The cryptographic parameters used by the sealing Cipher, encoded in the default format.

That is, `cipher.getParameters().getEncoded()`.

### Class javax.crypto.ShortBufferException extends GeneralSecurityException implements Serializable

serialVersionUID:
  8427718640832943747L

## Package javax.crypto.interfaces

## Package javax.crypto.spec

### Class javax.crypto.spec.SecretKeySpec extends Object implements Serializable

serialVersionUID:
  6577238317307289933L

### Serialized Fields

#### key

    byte[] key

The secret key.

#### algorithm

    String algorithm

The name of the algorithm associated with this key.

## Package javax.imageio

### Class javax.imageio.IIOException extends IOException implements Serializable

## Package javax.imageio.metadata

### Class javax.imageio.metadata.IIOInvalidTreeException extends IIOException implements Serializable

### Serialized Fields

#### offendingNode

    Node offendingNode

The `Node` that led to the parsing error, or `null`.

## Package javax.lang.model

### Class javax.lang.model.UnknownEntityException extends RuntimeException implements Serializable

serialVersionUID:
  269L

## Package javax.lang.model.element

### Class javax.lang.model.element.UnknownAnnotationValueException extends UnknownEntityException implements Serializable

serialVersionUID:
  269L

### Class javax.lang.model.element.UnknownElementException extends UnknownEntityException implements Serializable

serialVersionUID:
  269L

## Package javax.lang.model.type

### Class javax.lang.model.type.MirroredTypeException extends MirroredTypesException implements Serializable

serialVersionUID:
  269L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Explicitly set all transient fields.

Throws:
  `IOException`
  `ClassNotFoundException`

### Class javax.lang.model.type.MirroredTypesException extends RuntimeException implements Serializable

serialVersionUID:
  269L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Explicitly set all transient fields.

Throws:
  `IOException`
  `ClassNotFoundException`

### Class javax.lang.model.type.UnknownTypeException extends UnknownEntityException implements Serializable

serialVersionUID:
  269L

## Package javax.management

### Class javax.management.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 extends Object implements Serializable

serialVersionUID:
  2484220110589082382L

### Serialized Fields

#### name

    String name

Attribute name.

#### value

    Object value

Attribute value

### Class javax.management.AttributeChangeNotification extends Notification implements Serializable

serialVersionUID:
  535176054565814134L

### Serialized Fields

#### attributeName

    String attributeName

The MBean attribute name.

#### attributeType

    String attributeType

The MBean attribute type.

#### oldValue

    Object oldValue

The MBean attribute old value.

#### newValue

    Object newValue

The MBean attribute new value.

### Class javax.management.AttributeChangeNotificationFilter extends Object implements Serializable

serialVersionUID:
  -6347317584796410029L

### Serialized Fields

#### enabledAttributes

    Vector<E> enabledAttributes

`Vector` that contains the enabled attribute names. The default value is an empty vector.

### Class javax.management.AttributeList extends ArrayList<Object> implements Serializable

serialVersionUID:
  -4077085769279709076L

### Class javax.management.AttributeNotFoundException extends OperationsException implements Serializable

serialVersionUID:
  6511584241791106926L

### Class javax.management.AttributeValueExp extends Object implements Serializable

serialVersionUID:
  -7768025046539163385L

### Serialized Fields

#### attr

    String attr

The name of the attribute

### Class javax.management.BadAttributeValueExpException extends Exception implements Serializable

serialVersionUID:
  -3105272988410493376L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream ois)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### val

    Object val

A string representation of the attribute that originated this exception. for example, the string value can be the return of `attribute.toString()`

### Class javax.management.BadBinaryOpValueExpException extends Exception implements Serializable

serialVersionUID:
  5068475589449021227L

### Serialized Fields

#### exp

    ValueExp exp

the `ValueExp` that originated this exception

### Class javax.management.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 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 extends QueryEval implements Serializable

serialVersionUID:
  1216286847881456786L

### Serialized Fields

#### op

    int op

The operator

#### exp1

    ValueExp exp1

The first value

#### exp2

    ValueExp exp2

The second value

### Class javax.management.BinaryRelQueryExp extends QueryEval implements Serializable

serialVersionUID:
  -5690656271650491000L

### Serialized Fields

#### relOp

    int relOp

The operator

#### exp1

    ValueExp exp1

The first value

#### exp2

    ValueExp exp2

The second value

### Class javax.management.BooleanValueExp extends QueryEval implements Serializable

serialVersionUID:
  7754922052666594581L

### Serialized Fields

#### val

    boolean val

The boolean value

### Class javax.management.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 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 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

### Class javax.management.InstanceAlreadyExistsException extends OperationsException implements Serializable

serialVersionUID:
  8893743928912733931L

### Class javax.management.InstanceNotFoundException extends OperationsException implements Serializable

serialVersionUID:
  -882579438394773049L

### Class javax.management.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.

### Class javax.management.IntrospectionException extends OperationsException implements Serializable

serialVersionUID:
  1054516935875481725L

### Class javax.management.InvalidApplicationException extends Exception implements Serializable

serialVersionUID:
  -3048022274675537269L

### Serialized Fields

#### val

    Object val

The object representing the class of the MBean

### Class javax.management.InvalidAttributeValueException extends OperationsException implements Serializable

serialVersionUID:
  2164571879317142449L

### Class javax.management.JMException extends Exception implements Serializable

serialVersionUID:
  350520924977331825L

### Class javax.management.JMRuntimeException extends RuntimeException implements Serializable

serialVersionUID:
  6573344628407841861L

### Class javax.management.ListenerNotFoundException extends OperationsException implements Serializable

serialVersionUID:
  -7242605822448519061L

### Class javax.management.MalformedObjectNameException extends OperationsException implements Serializable

serialVersionUID:
  -572689714442915824L

### Class javax.management.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 extends MBeanFeatureInfo implements Serializable

### Serialized Fields

#### attributeType

    String attributeType

The actual attribute type.

#### isWrite

    boolean isWrite

The attribute write right.

#### isRead

    boolean isRead

The attribute read right.

#### is

    boolean is

Indicates if this method is a "is"

### Class javax.management.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.

### Class javax.management.MBeanException extends JMException implements Serializable

serialVersionUID:
  4066342430588744142L

### Serialized Fields

#### exception

    Exception exception

Encapsulated `Exception`

### Class javax.management.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 (a `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

#### 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.

#### 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.

### Class javax.management.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 (a `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

#### description

    String description

The human readable description of the class.

#### className

    String className

The MBean qualified name.

#### attributes

    MBeanAttributeInfo[] attributes

The MBean attribute descriptors.

#### operations

    MBeanOperationInfo[] operations

The MBean operation descriptors.

#### constructors

    MBeanConstructorInfo[] constructors

The MBean constructor descriptors.

#### notifications

    MBeanNotificationInfo[] notifications

The MBean notification descriptors.

### Class javax.management.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 extends MBeanFeatureInfo implements Serializable

serialVersionUID:
  -6178860474881375330L

### Serialized Fields

#### type

    String type

The method's return value.

#### signature

    MBeanParameterInfo[] signature

The signature of the method, that is, the class names of the arguments.

#### impact

    int impact

The impact of the method, one of `INFO`, `ACTION`, `ACTION_INFO`, `UNKNOWN`

### Class javax.management.MBeanParameterInfo extends MBeanFeatureInfo implements Serializable

serialVersionUID:
  7432616882776782338L

### Serialized Fields

#### type

    String type

The type or class name of the data.

### Class javax.management.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.

### Class javax.management.MBeanRegistrationException extends MBeanException implements Serializable

serialVersionUID:
  4482382455277067805L

### Class javax.management.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 extends BasicPermission implements Serializable

serialVersionUID:
  -5661980843569388590L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream in)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

### Class javax.management.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 extends BasicPermission implements Serializable

serialVersionUID:
  -2952178077029018140L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream in)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

### Class javax.management.NotCompliantMBeanException extends OperationsException implements Serializable

serialVersionUID:
  5175579583207963577L

### Class javax.management.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 extends Object implements Serializable

serialVersionUID:
  6579080007561786969L

### Serialized Fields

#### enabledTypes

    List<E> enabledTypes

`Vector` that contains the enabled notification types. The default value is an empty vector.

### Class javax.management.NotQueryExp extends QueryEval implements Serializable

serialVersionUID:
  5269643775896723397L

### Serialized Fields

#### exp

    QueryExp exp

The negated `QueryExp`

### Class javax.management.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 extends Object implements Serializable

serialVersionUID:
  -4099952623687795850L

### Serialized Fields

#### name

    ObjectName name

Object name.

#### className

    String className

Class name.

### Class javax.management.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.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.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`

### Class javax.management.OperationsException extends JMException implements Serializable

serialVersionUID:
  -4967597595580536216L

### Class javax.management.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 extends AttributeValueExp implements Serializable

serialVersionUID:
  8832517277410933254L

### Serialized Fields

#### className

    String className

The attribute class name

### Class javax.management.QueryEval extends Object implements Serializable

serialVersionUID:
  2675899265640874796L

### Class javax.management.ReflectionException extends JMException implements Serializable

serialVersionUID:
  9170809325636915553L

### Serialized Fields

#### exception

    Exception exception

The wrapped `Exception`

### Class javax.management.RuntimeErrorException extends JMRuntimeException implements Serializable

serialVersionUID:
  704338937753949796L

### Serialized Fields

#### error

    Error error

The encapsulated `Error`

### Class javax.management.RuntimeMBeanException extends JMRuntimeException implements Serializable

serialVersionUID:
  5274912751982730171L

### Serialized Fields

#### runtimeException

    RuntimeException runtimeException

The encapsulated `RuntimeException`

### Class javax.management.RuntimeOperationsException extends JMRuntimeException implements Serializable

serialVersionUID:
  -8408923047489133588L

### Serialized Fields

#### runtimeException

    RuntimeException runtimeException

The encapsulated `RuntimeException`

### Class javax.management.ServiceNotFoundException extends OperationsException implements Serializable

serialVersionUID:
  -3990675661956646827L

### Class javax.management.StringValueExp extends Object implements Serializable

serialVersionUID:
  -3256390509806284044L

### Serialized Fields

#### val

    String val

The string literal

## Package javax.management.loading

### Class javax.management.loading.MLet extends URLClassLoader implements Serializable

serialVersionUID:
  3636148327800330130L

### Serialization Methods

#### readExternal

    public void readExternal(ObjectInput in)
                      throws IOException,
                             ClassNotFoundException,
                             UnsupportedOperationException

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.

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

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.

Throws:
  `IOException` - If a problem occurred while writing.
  `UnsupportedOperationException` - If this implementation does not support this operation.

### Class javax.management.loading.PrivateMLet extends MLet implements Serializable

serialVersionUID:
  2503458973393711979L

### Serialization Methods

#### readExternal

    public void readExternal(ObjectInput in)
                      throws IOException,
                             ClassNotFoundException,
                             UnsupportedOperationException

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.

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

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.

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 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<K,V> descriptor

The collection of fields representing this descriptor

### Class javax.management.modelmbean.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 {@link Exception}

### Class javax.management.modelmbean.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 {@link Descriptor} containing the metadata corresponding to this attribute

### Class javax.management.modelmbean.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 {@link Descriptor} containing the metadata for this instance

### Class javax.management.modelmbean.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 {@link ModelMBeanAttributeInfo} objects which have descriptors

#### modelMBeanConstructors

    MBeanConstructorInfo[] modelMBeanConstructors

The array of {@link ModelMBeanConstructorInfo} objects which have descriptors

#### modelMBeanDescriptor

    Descriptor modelMBeanDescriptor

The descriptor containing MBean wide policy

#### modelMBeanNotifications

    MBeanNotificationInfo[] modelMBeanNotifications

The array of {@link ModelMBeanNotificationInfo} objects which have descriptors

#### modelMBeanOperations

    MBeanOperationInfo[] modelMBeanOperations

The array of {@link ModelMBeanOperationInfo} objects which have descriptors

### Class javax.management.modelmbean.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 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

### Class javax.management.modelmbean.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`

## Package javax.management.monitor

### Class javax.management.monitor.MonitorNotification extends Notification implements Serializable

serialVersionUID:
  -4608189663661929204L

### Serialized Fields

#### observedObject

    ObjectName observedObject

Monitor notification observed object.

#### observedAttribute

    String observedAttribute

Monitor notification observed attribute.

#### derivedGauge

    Object derivedGauge

Monitor notification derived gauge.

#### 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.

### Class javax.management.monitor.MonitorSettingException extends JMRuntimeException implements Serializable

serialVersionUID:
  -8807913418190202007L

## Package javax.management.openmbean

### Class javax.management.openmbean.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<T> 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 extends Object implements Serializable

serialVersionUID:
  8003518976613702244L

### Serialized Fields

#### contents

    SortedMap<K,V> contents

Internal representation of the mapping of item names to their respective values. A `SortedMap` is used for faster retrieval of elements.

#### compositeType

    CompositeType compositeType

The composite type of this composite data instance.

### Class javax.management.openmbean.CompositeType extends OpenType<CompositeData> implements Serializable

serialVersionUID:
  -5366242454346948798L

### Serialized Fields

#### nameToDescription

    TreeMap<K,V> nameToDescription

Sorted mapping of the item names to their descriptions

#### nameToType

    TreeMap<K,V> nameToType

Sorted mapping of the item names to their open types

### Class javax.management.openmbean.InvalidKeyException extends IllegalArgumentException implements Serializable

serialVersionUID:
  4224269443946322062L

### Class javax.management.openmbean.InvalidOpenTypeException extends IllegalArgumentException implements Serializable

serialVersionUID:
  -2837312755412327534L

### Class javax.management.openmbean.KeyAlreadyExistsException extends IllegalArgumentException implements Serializable

serialVersionUID:
  1845183636745282866L

### Class javax.management.openmbean.OpenDataException extends JMException implements Serializable

serialVersionUID:
  8346311255433349870L

### Class javax.management.openmbean.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

#### openType

    OpenType<T> openType

The open mbean attribute's open type

#### defaultValue

    Object defaultValue

The open mbean attribute's default value

#### legalValues

    Set<E> legalValues

The open mbean attribute's legal values. This `Set` is unmodifiable

#### minValue

    Comparable<T> minValue

The open mbean attribute's min value

#### maxValue

    Comparable<T> maxValue

The open mbean attribute's max value

### Class javax.management.openmbean.OpenMBeanConstructorInfoSupport extends MBeanConstructorInfo implements Serializable

serialVersionUID:
  -4400441579007477003L

### Class javax.management.openmbean.OpenMBeanInfoSupport extends MBeanInfo implements Serializable

serialVersionUID:
  4349395935420511492L

### Class javax.management.openmbean.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<T> returnOpenType

The open type of the values returned by the operation described by this `OpenMBeanOperationInfo` instance

### Class javax.management.openmbean.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

#### openType

    OpenType<T> openType

The open mbean parameter's open type

#### defaultValue

    Object defaultValue

The open mbean parameter's default value

#### legalValues

    Set<E> legalValues

The open mbean parameter's legal values. This `Set` is unmodifiable

#### minValue

    Comparable<T> minValue

The open mbean parameter's min value

#### maxValue

    Comparable<T> maxValue

The open mbean parameter's max value

### Class javax.management.openmbean.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 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 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<K,V> dataMap

This tabular data instance's contents: a `HashMap`

#### tabularType

    TabularType tabularType

This tabular data instance's tabular type

### Class javax.management.openmbean.TabularType extends OpenType<TabularData> implements Serializable

serialVersionUID:
  6554071860220659261L

### Serialized Fields

#### rowType

    CompositeType rowType

The composite type of rows

#### indexNames

    List<E> indexNames

The items used to index each row element, kept in the order the user gave This is an unmodifiable `ArrayList`

## Package javax.management.relation

### Class javax.management.relation.InvalidRelationIdException extends RelationException implements Serializable

serialVersionUID:
  -7115040321202754171L

### Class javax.management.relation.InvalidRelationServiceException extends RelationException implements Serializable

serialVersionUID:
  3400722103759507559L

### Class javax.management.relation.InvalidRelationTypeException extends RelationException implements Serializable

serialVersionUID:
  3007446608299169961L

### Class javax.management.relation.InvalidRoleInfoException extends RelationException implements Serializable

serialVersionUID:
  7517834705158932074L

### Class javax.management.relation.InvalidRoleValueException extends RelationException implements Serializable

serialVersionUID:
  -2066091747301983721L

### Class javax.management.relation.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<E> deselectedNames

List of {@link ObjectName}s with no interest

- `null` means that all {@link ObjectName}s are implicitly deselected (check for explicit selections))
- Empty vector means that no {@link ObjectName} is explicitly deselected

#### selectedNames

    List<E> selectedNames

List of {@link ObjectName}s of interest

- `null` means that all {@link ObjectName}s are implicitly selected (check for explicit deselections)
- Empty vector means that no {@link ObjectName} is explicitly selected

### Class javax.management.relation.RelationException extends JMException implements Serializable

serialVersionUID:
  5434016005679159613L

### Class javax.management.relation.RelationNotFoundException extends RelationException implements Serializable

serialVersionUID:
  -3793951411158559116L

### Class javax.management.relation.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<E> newRoleValue

New role value ({@link ArrayList} of {@link ObjectName}s) (only for role update)

#### oldRoleValue

    List<E> oldRoleValue

Old role value ({@link ArrayList} of {@link ObjectName}s) (only for role update)

#### relationId

    String relationId

Relation identifier of created/removed/updated relation

#### relationObjName

    ObjectName relationObjName

{@link 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<E> unregisterMBeanList

List of {@link ObjectName}s of referenced MBeans to be unregistered due to relation removal

### Class javax.management.relation.RelationServiceNotRegisteredException extends RelationException implements Serializable

serialVersionUID:
  8454744887157122910L

### Class javax.management.relation.RelationTypeNotFoundException extends RelationException implements Serializable

serialVersionUID:
  1274155316284300752L

### Class javax.management.relation.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<K,V> roleName2InfoMap

{@link Map} holding the mapping: <role name ({@link String})> -> <role info ({@link RoleInfo} object)>

#### typeName

    String typeName

Relation type name

### Class javax.management.relation.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<E> objectNameList

{@link List} of {@link ObjectName}s of referenced MBeans

### Class javax.management.relation.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

### Class javax.management.relation.RoleInfoNotFoundException extends RelationException implements Serializable

serialVersionUID:
  4394092234999959939L

### Class javax.management.relation.RoleList extends ArrayList<Object> implements Serializable

serialVersionUID:
  5568344346499649313L

### Class javax.management.relation.RoleNotFoundException extends RelationException implements Serializable

serialVersionUID:
  -2986406101364031481L

### Class javax.management.relation.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 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<E> roleValue

Role value ({@link List} of {@link ObjectName} objects)

### Class javax.management.relation.RoleUnresolvedList extends ArrayList<Object> implements Serializable

serialVersionUID:
  4054902803091433324L

## Package javax.management.remote

### Class javax.management.remote.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 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()`

### Class javax.management.remote.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:
  `JMXProviderException.getCause()`

### Class javax.management.remote.JMXServerErrorException extends IOException implements Serializable

serialVersionUID:
  3996732239558744666L

### Serialized Fields

#### cause

    Error cause

An `Error` that caused this exception to be thrown.

See Also:
  `JMXServerErrorException.getCause()`

### Class javax.management.remote.JMXServiceURL extends Object implements Serializable

serialVersionUID:
  8173364409860779292L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream inputStream)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### protocol

    String protocol

The value returned by `JMXServiceURL.getProtocol()`.

#### host

    String host

The value returned by `JMXServiceURL.getHost()`.

#### port

    int port

The value returned by `JMXServiceURL.getPort()`.

#### urlPath

    String urlPath

The value returned by `JMXServiceURL.getURLPath()`.

### Class javax.management.remote.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 extends BasicPermission implements Serializable

serialVersionUID:
  1481618113008682343L

### Class javax.management.remote.TargetedNotification extends Object implements Serializable

serialVersionUID:
  7676132089779300926L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream ois)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### notif

    Notification notif

A notification to transmit to the other side.

See Also:
  `TargetedNotification.getNotification()`

#### id

    Integer id

The ID of the listener to which the notification is targeted.

See Also:
  `TargetedNotification.getListenerID()`

## Package javax.management.remote.rmi

### Class javax.management.remote.rmi._RMIConnection_Stub extends Stub implements Serializable

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream arg0)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

### Class javax.management.remote.rmi._RMIServer_Stub extends Stub implements Serializable

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream arg0)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

### Class javax.management.remote.rmi.RMIConnectionImpl_Stub extends RemoteStub implements Serializable

serialVersionUID:
  2L

### Class javax.management.remote.rmi.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.

Throws:
  `InvalidObjectException` - if none of rmiServer stub or jmxServiceURL are set.
  `IOException`
  `ClassNotFoundException`
See Also:
  `RMIConnector.RMIConnector(JMXServiceURL,Map)`, `RMIConnector.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)`.

Throws:
  `InvalidObjectException` - if none of rmiServer stub or jmxServiceURL are set.
  `IOException`
See Also:
  `RMIConnector.RMIConnector(JMXServiceURL,Map)`, `RMIConnector.RMIConnector(RMIServer,Map)`

### Serialized Fields

#### 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.RMIConnector(RMIServer,Map)`

#### 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.RMIConnector(JMXServiceURL,Map)`

### Class javax.management.remote.rmi.RMIServerImpl_Stub extends RemoteStub implements Serializable

serialVersionUID:
  2L

## Package javax.management.timer

### Class javax.management.timer.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

### Class javax.naming.AuthenticationException extends NamingSecurityException implements Serializable

serialVersionUID:
  3678497619904568096L

### Class javax.naming.AuthenticationNotSupportedException extends NamingSecurityException implements Serializable

serialVersionUID:
  -7149033933259492300L

### Class javax.naming.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 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)`

### Class javax.naming.CannotProceedException extends NamingException implements Serializable

serialVersionUID:
  1219724816191576813L

### Serialized Fields

#### remainingNewName

    Name remainingNewName

Contains the remaining unresolved part of the second "name" argument to Context.rename(). This information 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)`

#### environment

    Hashtable<K,V> 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<?, ?>)`

#### 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<?, ?>)`

### Class javax.naming.CommunicationException extends NamingException implements Serializable

serialVersionUID:
  3618507780299986611L

### Class javax.naming.CompositeName extends Object implements Serializable

serialVersionUID:
  1667768148915813118L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Overridden to avoid implementation dependency.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Overridden to avoid implementation dependency.

Serial Data:
  The number of components (an `int`) followed by the individual components (each a `String`).
Throws:
  `IOException`

### Class javax.naming.CompoundName extends Object implements Serializable

serialVersionUID:
  3513100557083972036L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Overridden to avoid implementation dependency.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Overridden to avoid implementation dependency.

Serial Data:
  The syntax `Properties`, followed by the number of components (an `int`), and the individual components (each a `String`).
Throws:
  `IOException`

### Class javax.naming.ConfigurationException extends NamingException implements Serializable

serialVersionUID:
  -2535156726228855704L

### Class javax.naming.ContextNotEmptyException extends NamingException implements Serializable

serialVersionUID:
  1090963683348219877L

### Class javax.naming.InsufficientResourcesException extends NamingException implements Serializable

serialVersionUID:
  6227672693037844532L

### Class javax.naming.InterruptedNamingException extends NamingException implements Serializable

serialVersionUID:
  6404516648893194728L

### Class javax.naming.InvalidNameException extends NamingException implements Serializable

serialVersionUID:
  -8370672380823801105L

### Class javax.naming.LimitExceededException extends NamingException implements Serializable

serialVersionUID:
  -776898738660207856L

### Class javax.naming.LinkException extends NamingException implements Serializable

serialVersionUID:
  -7967662604076777712L

### Serialized Fields

#### 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)`

#### 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)`

#### 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)`

### Class javax.naming.LinkLoopException extends LinkException implements Serializable

serialVersionUID:
  -3119189944325198009L

### Class javax.naming.LinkRef extends Reference implements Serializable

serialVersionUID:
  -5386290613498931298L

### Class javax.naming.MalformedLinkException extends LinkException implements Serializable

serialVersionUID:
  -3066740437737830242L

### Class javax.naming.NameAlreadyBoundException extends NamingException implements Serializable

serialVersionUID:
  -8491441000356780586L

### Class javax.naming.NameClassPair extends Object implements Serializable

serialVersionUID:
  5620776610160863339L

### Serialized Fields

#### 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)`

#### 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)`

### Class javax.naming.NameNotFoundException extends NamingException implements Serializable

serialVersionUID:
  -8007156725367842053L

### Class javax.naming.NamingException extends Exception implements Serializable

serialVersionUID:
  -1299181962103167177L

### Serialized Fields

#### 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)`

#### 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)`

#### 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()`

### Class javax.naming.NamingSecurityException extends NamingException implements Serializable

serialVersionUID:
  5855287647294685775L

### Class javax.naming.NoInitialContextException extends NamingException implements Serializable

serialVersionUID:
  -3413733186901258623L

### Class javax.naming.NoPermissionException extends NamingSecurityException implements Serializable

serialVersionUID:
  8395332708699751775L

### Class javax.naming.NotContextException extends NamingException implements Serializable

serialVersionUID:
  849752551644540417L

### Class javax.naming.OperationNotSupportedException extends NamingException implements Serializable

serialVersionUID:
  5493232822427682064L

### Class javax.naming.PartialResultException extends NamingException implements Serializable

serialVersionUID:
  2572144970049426786L

### Class javax.naming.RefAddr extends Object implements Serializable

serialVersionUID:
  -1468165120479154358L

### Serialized Fields

#### addrType

    String addrType

Contains the type of this address.

### Class javax.naming.Reference extends Object implements Serializable

serialVersionUID:
  -1673475790065791735L

### Serialized Fields

#### className

    String className

Contains the fully-qualified name of the class of the object to which this Reference refers.

See Also:
  `Class.getName()`

#### addrs

    Vector<E> 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.

### Class javax.naming.ReferralException extends NamingException implements Serializable

serialVersionUID:
  -2881363844695698876L

### Class javax.naming.ServiceUnavailableException extends NamingException implements Serializable

serialVersionUID:
  -4996964726566773444L

### Class javax.naming.SizeLimitExceededException extends LimitExceededException implements Serializable

serialVersionUID:
  7129289564879168579L

### Class javax.naming.StringRefAddr extends RefAddr implements Serializable

serialVersionUID:
  -8913762495138505527L

### Serialized Fields

#### contents

    String contents

Contains the contents of this address. Can be null.

### Class javax.naming.TimeLimitExceededException extends LimitExceededException implements Serializable

serialVersionUID:
  -3597009011385034696L

## Package javax.naming.directory

### Class javax.naming.directory.AttributeInUseException extends NamingException implements Serializable

serialVersionUID:
  4437710305529322564L

### Class javax.naming.directory.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 extends Object implements Serializable

serialVersionUID:
  6743528196119291326L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Overridden to avoid exposing implementation details.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Overridden to avoid exposing implementation details

Serial Data:
  Default field (the attribute ID -- a String), followed by the number of values (an int), and the individual values.
Throws:
  `IOException`

### 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 extends Object implements Serializable

serialVersionUID:
  4980164073184639448L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Overridden to avoid exposing implementation details.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Overridden to avoid exposing implementation details.

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.
Throws:
  `IOException`

### Serialized Fields

#### ignoreCase

    boolean ignoreCase

Indicates whether case of attribute ids is ignored.

### Class javax.naming.directory.InvalidAttributeIdentifierException extends NamingException implements Serializable

serialVersionUID:
  -9036920266322999923L

### Class javax.naming.directory.InvalidAttributesException extends NamingException implements Serializable

serialVersionUID:
  2607612850539889765L

### Class javax.naming.directory.InvalidAttributeValueException extends NamingException implements Serializable

serialVersionUID:
  8720050295499275011L

### Class javax.naming.directory.InvalidSearchControlsException extends NamingException implements Serializable

serialVersionUID:
  -5124108943352665777L

### Class javax.naming.directory.InvalidSearchFilterException extends NamingException implements Serializable

serialVersionUID:
  2902700940682875441L

### Class javax.naming.directory.ModificationItem extends Object implements Serializable

serialVersionUID:
  7573258562534746850L

### Serialized Fields

#### mod_op

    int mod_op

Contains an integer identify the modification to be performed.

#### attr

    Attribute attr

Contains the attribute identifying the attribute and/or its value to be applied for the modification.

### Class javax.naming.directory.NoSuchAttributeException extends NamingException implements Serializable

serialVersionUID:
  4836415647935888137L

### Class javax.naming.directory.SchemaViolationException extends NamingException implements Serializable

serialVersionUID:
  -3041762429525049663L

### Class javax.naming.directory.SearchControls extends Object implements Serializable

serialVersionUID:
  -2480540967773454797L

### Serialized Fields

#### 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.

#### derefLink

    boolean derefLink

Indicates whether JNDI links are dereferenced during search.

#### returnObj

    boolean returnObj

Indicates whether object is returned in `SearchResult`.

#### countLimit

    long countLimit

Contains the maximum number of SearchResults to return.

#### 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.

### Class javax.naming.directory.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 extends EventObject implements Serializable

serialVersionUID:
  -7126752885365133499L

### Serialized Fields

#### changeInfo

    Object changeInfo

Contains information about the change that generated this event.

#### type

    int type

Contains the type of this event.

See Also:
  `NamingEvent.OBJECT_ADDED`, `NamingEvent.OBJECT_REMOVED`, `NamingEvent.OBJECT_RENAMED`, `NamingEvent.OBJECT_CHANGED`

#### oldBinding

    Binding oldBinding

Contains information about the object before the change.

#### newBinding

    Binding newBinding

Contains information about the object after the change.

### Class javax.naming.event.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 extends Object implements Serializable

serialVersionUID:
  -4233907508771791687L

### Serialized Fields

#### id

    String id

The control's object identifier string.

#### criticality

    boolean criticality

The control's criticality.

#### value

    byte[] value

The control's ASN.1 BER encoded value.

### Class javax.naming.ldap.LdapName extends Object implements Serializable

serialVersionUID:
  -1595520034788997356L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Serializes only the unparsed DN, for compactness and to avoid any implementation dependency.

Serial Data:
  The DN string
Throws:
  `IOException`

### Class javax.naming.ldap.LdapReferralException extends ReferralException implements Serializable

serialVersionUID:
  -1668992791764950804L

### Class javax.naming.ldap.ManageReferralControl extends BasicControl implements Serializable

serialVersionUID:
  3017756160149982566L

### Class javax.naming.ldap.PagedResultsControl extends BasicControl implements Serializable

serialVersionUID:
  6684806685736844298L

### Class javax.naming.ldap.PagedResultsResponseControl extends BasicControl implements Serializable

serialVersionUID:
  -8819778744844514666L

### Serialized Fields

#### resultSize

    int resultSize

An estimate of the number of entries in the search result.

#### cookie

    byte[] cookie

A server-generated cookie.

### Class javax.naming.ldap.Rdn extends Object implements Serializable

serialVersionUID:
  -5994465067210009656L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Serializes only the unparsed RDN, for compactness and to avoid any implementation dependency.

Serial Data:
  The RDN string
Throws:
  `IOException`

### Class javax.naming.ldap.SortControl extends BasicControl implements Serializable

serialVersionUID:
  -1965961680233330744L

### Class javax.naming.ldap.SortResponseControl extends BasicControl implements Serializable

serialVersionUID:
  5142939176006310877L

### Serialized Fields

#### resultCode

    int resultCode

The sort result code.

#### badAttrId

    String badAttrId

The ID of the attribute that caused the sort to fail.

### Class javax.naming.ldap.StartTlsRequest extends Object implements Serializable

serialVersionUID:
  4441679576360753397L

### Class javax.naming.ldap.StartTlsResponse extends Object implements Serializable

serialVersionUID:
  8372842182579276418L

### Class javax.naming.ldap.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 extends Object implements Serializable

serialVersionUID:
  -4552108072002407559L

### Serialized Fields

#### 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.

#### 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.

## Package javax.net.ssl

### Class javax.net.ssl.HandshakeCompletedEvent extends EventObject implements Serializable

serialVersionUID:
  7914963744257769778L

### Class javax.net.ssl.SSLException extends IOException implements Serializable

serialVersionUID:
  4511006460650708967L

### Class javax.net.ssl.SSLHandshakeException extends SSLException implements Serializable

serialVersionUID:
  -5045881315018326890L

### Class javax.net.ssl.SSLKeyException extends SSLException implements Serializable

serialVersionUID:
  -8071664081941937874L

### Class javax.net.ssl.SSLPeerUnverifiedException extends SSLException implements Serializable

serialVersionUID:
  -8919512675000600547L

### Class javax.net.ssl.SSLPermission extends BasicPermission implements Serializable

serialVersionUID:
  -3456898025505876775L

### Class javax.net.ssl.SSLProtocolException extends SSLException implements Serializable

serialVersionUID:
  5445067063799134928L

### Class javax.net.ssl.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 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.
Throws:
  `ClassNotFoundException`
  `IOException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Write the instance to a stream (ie serialize the object).

Throws:
  `IOException`

### Serialized Fields

#### myClassName

    String myClassName

Representation class name.

### Class javax.print.DocFlavor.BYTE_ARRAY extends DocFlavor implements Serializable

serialVersionUID:
  -9065578006593857475L

### Class javax.print.DocFlavor.CHAR_ARRAY extends DocFlavor implements Serializable

serialVersionUID:
  -8720590903724405128L

### Class javax.print.DocFlavor.INPUT_STREAM extends DocFlavor implements Serializable

serialVersionUID:
  -7045842700749194127L

### Class javax.print.DocFlavor.READER extends DocFlavor implements Serializable

serialVersionUID:
  7100295812579351567L

### Class javax.print.DocFlavor.SERVICE_FORMATTED extends DocFlavor implements Serializable

serialVersionUID:
  6181337766266637256L

### Class javax.print.DocFlavor.STRING extends DocFlavor implements Serializable

serialVersionUID:
  4414407504887034035L

### Class javax.print.DocFlavor.URL extends DocFlavor implements Serializable

### Class javax.print.PrintException extends Exception implements Serializable

## Package javax.print.attribute

### Class javax.print.attribute.AttributeSetUtilities.SynchronizedAttributeSet extends Object implements Serializable

### Serialized Fields

#### attrset

    AttributeSet attrset

### Class javax.print.attribute.AttributeSetUtilities.SynchronizedDocAttributeSet extends javax.print.attribute.AttributeSetUtilities.SynchronizedAttributeSet implements Serializable

### Class javax.print.attribute.AttributeSetUtilities.SynchronizedPrintJobAttributeSet extends javax.print.attribute.AttributeSetUtilities.SynchronizedAttributeSet implements Serializable

### Class javax.print.attribute.AttributeSetUtilities.SynchronizedPrintRequestAttributeSet extends javax.print.attribute.AttributeSetUtilities.SynchronizedAttributeSet implements Serializable

### Class javax.print.attribute.AttributeSetUtilities.SynchronizedPrintServiceAttributeSet extends javax.print.attribute.AttributeSetUtilities.SynchronizedAttributeSet implements Serializable

### Class javax.print.attribute.AttributeSetUtilities.UnmodifiableAttributeSet extends Object implements Serializable

### Serialized Fields

#### attrset

    AttributeSet attrset

### Class javax.print.attribute.AttributeSetUtilities.UnmodifiableDocAttributeSet extends javax.print.attribute.AttributeSetUtilities.UnmodifiableAttributeSet implements Serializable

### Class javax.print.attribute.AttributeSetUtilities.UnmodifiablePrintJobAttributeSet extends javax.print.attribute.AttributeSetUtilities.UnmodifiableAttributeSet implements Serializable

### Class javax.print.attribute.AttributeSetUtilities.UnmodifiablePrintRequestAttributeSet extends javax.print.attribute.AttributeSetUtilities.UnmodifiableAttributeSet implements Serializable

### Class javax.print.attribute.AttributeSetUtilities.UnmodifiablePrintServiceAttributeSet extends javax.print.attribute.AttributeSetUtilities.UnmodifiableAttributeSet implements Serializable

### Class javax.print.attribute.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 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` - Thrown 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 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).

Throws:
  `ClassNotFoundException`
  `IOException`

#### 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.
Throws:
  `IOException`

### Serialized Fields

#### myInterface

    Class<T> 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 extends HashAttributeSet implements Serializable

serialVersionUID:
  -1128534486061432528L

### Class javax.print.attribute.HashPrintJobAttributeSet extends HashAttributeSet implements Serializable

serialVersionUID:
  -4204473656070350348L

### Class javax.print.attribute.HashPrintRequestAttributeSet extends HashAttributeSet implements Serializable

serialVersionUID:
  2364756266107751933L

### Class javax.print.attribute.HashPrintServiceAttributeSet extends HashAttributeSet implements Serializable

serialVersionUID:
  6642904616179203070L

### Class javax.print.attribute.IntegerSyntax extends Object implements Serializable

serialVersionUID:
  3644574816328081943L

### Serialized Fields

#### value

    int value

This integer attribute's integer value.

### Class javax.print.attribute.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 extends Object implements Serializable

serialVersionUID:
  3666874174847632203L

### Serialized Fields

#### members

    int[][] members

This set's members in canonical array form.

### Class javax.print.attribute.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 extends Object implements Serializable

serialVersionUID:
  -8130648736378144102L

### Serialized Fields

#### value

    String value

String value of this text attribute.

#### locale

    Locale locale

Locale of this text attribute.

### Class javax.print.attribute.UnmodifiableSetException extends RuntimeException implements Serializable

### Class javax.print.attribute.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 extends EnumSyntax implements Serializable

serialVersionUID:
  4660543931355214012L

### Class javax.print.attribute.standard.ColorSupported extends EnumSyntax implements Serializable

serialVersionUID:
  -2700555589688535545L

### Class javax.print.attribute.standard.Compression extends EnumSyntax implements Serializable

serialVersionUID:
  -5716748913324997674L

### Class javax.print.attribute.standard.Copies extends IntegerSyntax implements Serializable

serialVersionUID:
  -6426631521680023833L

### Class javax.print.attribute.standard.CopiesSupported extends SetOfIntegerSyntax implements Serializable

serialVersionUID:
  6927711687034846001L

### Class javax.print.attribute.standard.DateTimeAtCompleted extends DateTimeSyntax implements Serializable

serialVersionUID:
  6497399708058490000L

### Class javax.print.attribute.standard.DateTimeAtCreation extends DateTimeSyntax implements Serializable

serialVersionUID:
  -2923732231056647903L

### Class javax.print.attribute.standard.DateTimeAtProcessing extends DateTimeSyntax implements Serializable

serialVersionUID:
  -3710068197278263244L

### Class javax.print.attribute.standard.Destination extends URISyntax implements Serializable

serialVersionUID:
  6776739171700415321L

### Class javax.print.attribute.standard.DialogTypeSelection extends EnumSyntax implements Serializable

serialVersionUID:
  7518682952133256029L

### Class javax.print.attribute.standard.DocumentName extends TextSyntax implements Serializable

serialVersionUID:
  7883105848533280430L

### Class javax.print.attribute.standard.Fidelity extends EnumSyntax implements Serializable

serialVersionUID:
  6320827847329172308L

### Class javax.print.attribute.standard.Finishings extends EnumSyntax implements Serializable

serialVersionUID:
  -627840419548391754L

### Class javax.print.attribute.standard.JobHoldUntil extends DateTimeSyntax implements Serializable

serialVersionUID:
  -1664471048860415024L

### Class javax.print.attribute.standard.JobImpressions extends IntegerSyntax implements Serializable

serialVersionUID:
  8225537206784322464L

### Class javax.print.attribute.standard.JobImpressionsCompleted extends IntegerSyntax implements Serializable

serialVersionUID:
  6722648442432393294L

### Class javax.print.attribute.standard.JobImpressionsSupported extends SetOfIntegerSyntax implements Serializable

serialVersionUID:
  -4887354803843173692L

### Class javax.print.attribute.standard.JobKOctets extends IntegerSyntax implements Serializable

serialVersionUID:
  -8959710146498202869L

### Class javax.print.attribute.standard.JobKOctetsProcessed extends IntegerSyntax implements Serializable

serialVersionUID:
  -6265238509657881806L

### Class javax.print.attribute.standard.JobKOctetsSupported extends SetOfIntegerSyntax implements Serializable

serialVersionUID:
  -2867871140549897443L

### Class javax.print.attribute.standard.JobMediaSheets extends IntegerSyntax implements Serializable

serialVersionUID:
  408871131531979741L

### Class javax.print.attribute.standard.JobMediaSheetsCompleted extends IntegerSyntax implements Serializable

serialVersionUID:
  1739595973810840475L

### Class javax.print.attribute.standard.JobMediaSheetsSupported extends SetOfIntegerSyntax implements Serializable

serialVersionUID:
  2953685470388672940L

### Class javax.print.attribute.standard.JobMessageFromOperator extends TextSyntax implements Serializable

serialVersionUID:
  -4620751846003142047L

### Class javax.print.attribute.standard.JobName extends TextSyntax implements Serializable

serialVersionUID:
  4660359192078689545L

### Class javax.print.attribute.standard.JobOriginatingUserName extends TextSyntax implements Serializable

serialVersionUID:
  -8052537926362933477L

### Class javax.print.attribute.standard.JobPriority extends IntegerSyntax implements Serializable

serialVersionUID:
  -4599900369040602769L

### Class javax.print.attribute.standard.JobPrioritySupported extends IntegerSyntax implements Serializable

serialVersionUID:
  2564840378013555894L

### Class javax.print.attribute.standard.JobSheets extends EnumSyntax implements Serializable

serialVersionUID:
  -4735258056132519759L

### Class javax.print.attribute.standard.JobState extends EnumSyntax implements Serializable

serialVersionUID:
  400465010094018920L

### Class javax.print.attribute.standard.JobStateReason extends EnumSyntax implements Serializable

serialVersionUID:
  -8765894420449009168L

### Class javax.print.attribute.standard.JobStateReasons extends HashSet<JobStateReason> implements Serializable

serialVersionUID:
  8849088261264331812L

### Class javax.print.attribute.standard.Media extends EnumSyntax implements Serializable

serialVersionUID:
  -2823970704630722439L

### Class javax.print.attribute.standard.MediaName extends Media implements Serializable

serialVersionUID:
  4653117714524155448L

### Class javax.print.attribute.standard.MediaPrintableArea extends Object implements Serializable

serialVersionUID:
  -1597171464050795793L

### Serialized Fields

#### x

    int x

#### y

    int y

#### w

    int w

#### h

    int h

#### units

    int units

### Class javax.print.attribute.standard.MediaSize extends Size2DSyntax implements Serializable

serialVersionUID:
  -1967958664615414771L

### Serialized Fields

#### mediaName

    MediaSizeName mediaName

### Class javax.print.attribute.standard.MediaSizeName extends Media implements Serializable

serialVersionUID:
  2778798329756942747L

### Class javax.print.attribute.standard.MediaTray extends Media implements Serializable

serialVersionUID:
  -982503611095214703L

### Class javax.print.attribute.standard.MultipleDocumentHandling extends EnumSyntax implements Serializable

serialVersionUID:
  8098326460746413466L

### Class javax.print.attribute.standard.NumberOfDocuments extends IntegerSyntax implements Serializable

serialVersionUID:
  7891881310684461097L

### Class javax.print.attribute.standard.NumberOfInterveningJobs extends IntegerSyntax implements Serializable

serialVersionUID:
  2568141124844982746L

### Class javax.print.attribute.standard.NumberUp extends IntegerSyntax implements Serializable

serialVersionUID:
  -3040436486786527811L

### Class javax.print.attribute.standard.NumberUpSupported extends SetOfIntegerSyntax implements Serializable

serialVersionUID:
  -1041573395759141805L

### Class javax.print.attribute.standard.OrientationRequested extends EnumSyntax implements Serializable

serialVersionUID:
  -4447437289862822276L

### Class javax.print.attribute.standard.OutputDeviceAssigned extends TextSyntax implements Serializable

serialVersionUID:
  5486733778854271081L

### Class javax.print.attribute.standard.PageRanges extends SetOfIntegerSyntax implements Serializable

serialVersionUID:
  8639895197656148392L

### Class javax.print.attribute.standard.PagesPerMinute extends IntegerSyntax implements Serializable

serialVersionUID:
  -6366403993072862015L

### Class javax.print.attribute.standard.PagesPerMinuteColor extends IntegerSyntax implements Serializable

serialVersionUID:
  1684993151687470944L

### Class javax.print.attribute.standard.PDLOverrideSupported extends EnumSyntax implements Serializable

serialVersionUID:
  -4393264467928463934L

### Class javax.print.attribute.standard.PresentationDirection extends EnumSyntax implements Serializable

serialVersionUID:
  8294728067230931780L

### Class javax.print.attribute.standard.PrinterInfo extends TextSyntax implements Serializable

serialVersionUID:
  7765280618777599727L

### Class javax.print.attribute.standard.PrinterIsAcceptingJobs extends EnumSyntax implements Serializable

serialVersionUID:
  -5052010680537678061L

### Class javax.print.attribute.standard.PrinterLocation extends TextSyntax implements Serializable

serialVersionUID:
  -1598610039865566337L

### Class javax.print.attribute.standard.PrinterMakeAndModel extends TextSyntax implements Serializable

serialVersionUID:
  4580461489499351411L

### Class javax.print.attribute.standard.PrinterMessageFromOperator extends TextSyntax implements Serializable

serialVersionUID:
  -4486871203218629318L

### Class javax.print.attribute.standard.PrinterMoreInfo extends URISyntax implements Serializable

serialVersionUID:
  4555850007675338574L

### Class javax.print.attribute.standard.PrinterMoreInfoManufacturer extends URISyntax implements Serializable

serialVersionUID:
  3323271346485076608L

### Class javax.print.attribute.standard.PrinterName extends TextSyntax implements Serializable

serialVersionUID:
  299740639137803127L

### Class javax.print.attribute.standard.PrinterResolution extends ResolutionSyntax implements Serializable

serialVersionUID:
  13090306561090558L

### Class javax.print.attribute.standard.PrinterState extends EnumSyntax implements Serializable

serialVersionUID:
  -649578618346507718L

### Class javax.print.attribute.standard.PrinterStateReason extends EnumSyntax implements Serializable

serialVersionUID:
  -1623720656201472593L

### Class javax.print.attribute.standard.PrinterStateReasons extends HashMap<PrinterStateReason,Severity> implements Serializable

serialVersionUID:
  -3731791085163619457L

### Class javax.print.attribute.standard.PrinterURI extends URISyntax implements Serializable

serialVersionUID:
  7923912792485606497L

### Class javax.print.attribute.standard.PrintQuality extends EnumSyntax implements Serializable

serialVersionUID:
  -3072341285225858365L

### Class javax.print.attribute.standard.QueuedJobCount extends IntegerSyntax implements Serializable

serialVersionUID:
  7499723077864047742L

### Class javax.print.attribute.standard.ReferenceUriSchemesSupported extends EnumSyntax implements Serializable

serialVersionUID:
  -8989076942813442805L

### Class javax.print.attribute.standard.RequestingUserName extends TextSyntax implements Serializable

serialVersionUID:
  -2683049894310331454L

### Class javax.print.attribute.standard.Severity extends EnumSyntax implements Serializable

serialVersionUID:
  8781881462717925380L

### Class javax.print.attribute.standard.SheetCollate extends EnumSyntax implements Serializable

serialVersionUID:
  7080587914259873003L

### Class javax.print.attribute.standard.Sides extends EnumSyntax implements Serializable

serialVersionUID:
  -6890309414893262822L

## Package javax.print.event

### Class javax.print.event.PrintEvent extends EventObject implements Serializable

serialVersionUID:
  2286914924430763847L

### Class javax.print.event.PrintJobAttributeEvent extends PrintEvent implements Serializable

serialVersionUID:
  -6534469883874742101L

### Serialized Fields

#### attributes

    PrintJobAttributeSet attributes

### Class javax.print.event.PrintJobEvent extends PrintEvent implements Serializable

serialVersionUID:
  -1711656903622072997L

### Serialized Fields

#### reason

    int reason

### Class javax.print.event.PrintServiceAttributeEvent extends PrintEvent implements Serializable

serialVersionUID:
  -7565987018140326600L

### Serialized Fields

#### attributes

    PrintServiceAttributeSet attributes

## Package javax.rmi.CORBA

### Class javax.rmi.CORBA.ClassDesc extends Object implements Serializable

### Serialized Fields

#### repid

    String repid

The class's RepositoryId.

#### codebase

    String codebase

A space-separated list of codebase URLs.

### Class javax.rmi.CORBA.Stub extends ObjectImpl implements Serializable

serialVersionUID:
  1087775603798577179L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream stream)
                     throws IOException,
                            ClassNotFoundException

Serialization method to restore the IOR state.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream stream)
                      throws IOException

Serialization method to save the IOR state.

Serial Data:
  The length of the IOR type ID (int), followed by the IOR type ID (byte array encoded using ISO8859-1), followed by the number of IOR profiles (int), followed by the IOR profiles. Each IOR profile is written as a profile tag (int), followed by the length of the profile data (int), followed by the profile data (byte array).
Throws:
  `IOException`

## Package javax.rmi.ssl

### Class javax.rmi.ssl.SslRMIClientSocketFactory extends Object implements Serializable

serialVersionUID:
  -8310631444933958385L

## Package javax.script

### Class javax.script.ScriptException extends Exception implements Serializable

serialVersionUID:
  8265071037049225001L

### Serialized Fields

#### fileName

    String fileName

#### lineNumber

    int lineNumber

#### columnNumber

    int columnNumber

## Package javax.security.auth

### Class javax.security.auth.AuthPermission extends BasicPermission implements Serializable

serialVersionUID:
  5806031445061587174L

### Class javax.security.auth.DestroyFailedException extends Exception implements Serializable

serialVersionUID:
  -7790152857282749162L

### Class javax.security.auth.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)

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### credentialClass

    String credentialClass

#### principals

    Set<E> principals

The Principals associated with this permission. The set contains elements of type, `PrivateCredentialPermission.CredOwner`.

#### testing

    boolean testing

### Class javax.security.auth.PrivateCredentialPermission.CredOwner extends Object implements Serializable

serialVersionUID:
  -5607449830436408266L

### Serialized Fields

#### principalClass

    String principalClass

#### principalName

    String principalName

### Class javax.security.auth.RefreshFailedException extends Exception implements Serializable

serialVersionUID:
  5058444488565265840L

### Class javax.security.auth.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)

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream oos)
                      throws IOException

Writes this object out to a stream (i.e., serializes it).

Throws:
  `IOException`

### Serialized Fields

#### principals

    Set<E> 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 extends AbstractSet<E> implements Serializable

serialVersionUID:
  7911754171111800359L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream ois)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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.
Throws:
  `IOException`

### Serialized Fields

#### elements

    LinkedList<E> 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 extends Object implements Serializable

serialVersionUID:
  -3975664071579892167L

### Serialized Fields

#### prompt

    String prompt

Since:
  1.4

#### 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

#### selections

    int[] selections

the selected choices, represented as indexes into the `choices` list.

Since:
  1.4

### Class javax.security.auth.callback.ConfirmationCallback extends Object implements Serializable

serialVersionUID:
  -9095656433782481624L

### Serialized Fields

#### prompt

    String prompt

Since:
  1.4

#### messageType

    int messageType

Since:
  1.4

#### optionType

    int optionType

Since:
  1.4

#### defaultOption

    int defaultOption

Since:
  1.4

#### options

    String[] options

Since:
  1.4

#### selection

    int selection

Since:
  1.4

### Class javax.security.auth.callback.LanguageCallback extends Object implements Serializable

serialVersionUID:
  2019050433478903213L

### Serialized Fields

#### locale

    Locale locale

Since:
  1.4

### Class javax.security.auth.callback.NameCallback extends Object implements Serializable

serialVersionUID:
  3770938795909392253L

### Serialized Fields

#### prompt

    String prompt

Since:
  1.4

#### defaultName

    String defaultName

Since:
  1.4

#### inputName

    String inputName

Since:
  1.4

### Class javax.security.auth.callback.PasswordCallback extends Object implements Serializable

serialVersionUID:
  2267422647454909926L

### Serialized Fields

#### prompt

    String prompt

Since:
  1.4

#### echoOn

    boolean echoOn

Since:
  1.4

#### inputPassword

    char[] inputPassword

Since:
  1.4

### Class javax.security.auth.callback.TextInputCallback extends Object implements Serializable

serialVersionUID:
  -8064222478852811804L

### Serialized Fields

#### prompt

    String prompt

Since:
  1.4

#### defaultText

    String defaultText

Since:
  1.4

#### inputText

    String inputText

Since:
  1.4

### Class javax.security.auth.callback.TextOutputCallback extends Object implements Serializable

serialVersionUID:
  1689502495511663102L

### Serialized Fields

#### messageType

    int messageType

Since:
  1.4

#### message

    String message

Since:
  1.4

### Class javax.security.auth.callback.UnsupportedCallbackException extends Exception implements Serializable

serialVersionUID:
  -6873556327655666839L

### Serialized Fields

#### callback

    Callback callback

## Package javax.security.auth.kerberos

### Class javax.security.auth.kerberos.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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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.

Throws:
  `IOException`

### Class javax.security.auth.kerberos.KerberosKey extends Object implements Serializable

serialVersionUID:
  -4625402278148246993L

### Serialized Fields

#### principal

    KerberosPrincipal principal

The principal that this secret key belongs to.

#### versionNum

    int versionNum

the version number of this secret key

#### key

    javax.security.auth.kerberos.KeyImpl key

`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
     }

### Class javax.security.auth.kerberos.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)

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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.
Throws:
  `IOException`

### Class javax.security.auth.kerberos.KerberosTicket extends Object implements Serializable

serialVersionUID:
  7395334370157380539L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### asn1Encoding

    byte[] asn1Encoding

ASN.1 DER Encoding of the Ticket as defined in the Kerberos Protocol Specification RFC4120.

#### 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
     }

#### flags

    boolean[] flags

Ticket Flags as defined in the Kerberos Protocol Specification RFC4120.

#### authTime

    Date authTime

Time of initial authentication

#### startTime

    Date startTime

Time after which the ticket is valid.

#### endTime

    Date endTime

Time after which the ticket will not be honored. (its expiration time).

#### 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.

#### client

    KerberosPrincipal client

Client that owns the service ticket

#### server

    KerberosPrincipal server

The service for which the ticket was issued.

#### 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.

### Class javax.security.auth.kerberos.KeyImpl extends Object implements Serializable

serialVersionUID:
  -7889313790214321193L

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream ois)
                     throws IOException,
                            ClassNotFoundException

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream ois)
                      throws IOException

Serial Data:
  this `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 }
Throws:
  `IOException`

### Class javax.security.auth.kerberos.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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### 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.

Throws:
  `IOException`

### Serialized Fields

#### actions

    String actions

the actions string.

## Package javax.security.auth.login

### Class javax.security.auth.login.AccountException extends LoginException implements Serializable

serialVersionUID:
  -2112878680072211787L

### Class javax.security.auth.login.AccountExpiredException extends AccountException implements Serializable

serialVersionUID:
  -6064064890162661560L

### Class javax.security.auth.login.AccountLockedException extends AccountException implements Serializable

serialVersionUID:
  8280345554014066334L

### Class javax.security.auth.login.AccountNotFoundException extends AccountException implements Serializable

serialVersionUID:
  1498349563916294614L

### Class javax.security.auth.login.CredentialException extends LoginException implements Serializable

serialVersionUID:
  -4772893876810601859L

### Class javax.security.auth.login.CredentialExpiredException extends CredentialException implements Serializable

serialVersionUID:
  -5344739593859737937L

### Class javax.security.auth.login.CredentialNotFoundException extends CredentialException implements Serializable

serialVersionUID:
  -7779934467214319475L

### Class javax.security.auth.login.FailedLoginException extends LoginException implements Serializable

serialVersionUID:
  802556922354616286L

### Class javax.security.auth.login.LoginException extends GeneralSecurityException implements Serializable

serialVersionUID:
  -4679091624035232488L

## Package javax.security.auth.x500

### Class javax.security.auth.x500.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).

Throws:
  `IOException`
  `NotActiveException`
  `ClassNotFoundException`

#### 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).
Throws:
  `IOException`

## Package javax.security.cert

### Class javax.security.cert.CertificateEncodingException extends CertificateException implements Serializable

serialVersionUID:
  -8187642723048403470L

### Class javax.security.cert.CertificateException extends Exception implements Serializable

serialVersionUID:
  -5757213374030785290L

### Class javax.security.cert.CertificateExpiredException extends CertificateException implements Serializable

serialVersionUID:
  5091601212177261883L

### Class javax.security.cert.CertificateNotYetValidException extends CertificateException implements Serializable

serialVersionUID:
  -8976172474266822818L

### Class javax.security.cert.CertificateParsingException extends CertificateException implements Serializable

serialVersionUID:
  -8449352422951136229L

## Package javax.security.sasl

### Class javax.security.sasl.AuthenticationException extends SaslException implements Serializable

serialVersionUID:
  -3579708765071815007L

### Class javax.security.sasl.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.

#### authorizedID

    String authorizedID

The id of the authorized entity. If null, the id of the authorized entity is authorizationID.

#### authorized

    boolean authorized

A flag indicating whether the authentication id is allowed to act on behalf of the authorization id.

### Class javax.security.sasl.RealmCallback extends TextInputCallback implements Serializable

serialVersionUID:
  -4342673378785456908L

### Class javax.security.sasl.RealmChoiceCallback extends ChoiceCallback implements Serializable

serialVersionUID:
  -8588141348846281332L

### Class javax.security.sasl.SaslException extends IOException implements Serializable

serialVersionUID:
  4579784287983423626L

### Serialized Fields

#### _exception

    Throwable _exception

The possibly null root cause exception.

## Package javax.sound.midi

### Class javax.sound.midi.InvalidMidiDataException extends Exception implements Serializable

### Class javax.sound.midi.MidiUnavailableException extends Exception implements Serializable

## Package javax.sound.sampled

### Class javax.sound.sampled.AudioPermission extends BasicPermission implements Serializable

### Class javax.sound.sampled.LineUnavailableException extends Exception implements Serializable

### Class javax.sound.sampled.UnsupportedAudioFileException extends Exception implements Serializable

## Package javax.sql

### Class javax.sql.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 extends EventObject implements Serializable

serialVersionUID:
  -1875450876546332005L

### Class javax.sql.StatementEvent extends EventObject implements Serializable

serialVersionUID:
  -8089573731826608315L

### Serialized Fields

#### exception

    SQLException exception

#### statement

    PreparedStatement statement

## Package javax.sql.rowset

### Class javax.sql.rowset.BaseRowSet extends Object implements Serializable

serialVersionUID:
  4886719666485113312L

### Serialized Fields

#### binaryStream

    InputStream binaryStream

The `InputStream` object that will be returned by the method `getBinaryStream`, which is specified in the `ResultSet` interface.

#### unicodeStream

    InputStream unicodeStream

The `InputStream` object that will be returned by the method `getUnicodeStream`, which is specified in the `ResultSet` interface.

#### asciiStream

    InputStream asciiStream

The `InputStream` object that will be returned by the method `getAsciiStream`, 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.

#### 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 conndection. This URL can be found in the documentation supplied by the driver vendor.

#### 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.

#### 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 .

#### 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.

#### maxRows

    int maxRows

The maximum number of rows the reader should read.

#### maxFieldSize

    int maxFieldSize

The maximum field size the reader should read.

#### 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`.

#### 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.

#### 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`.

#### 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`.

#### 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.

#### map

    Map<K,V> 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.

#### listeners

    Vector<E> listeners

A `Vector` object that holds the list of listeners that have registered with this `RowSet` object.

#### params

    Hashtable<K,V> params

A `Vector` object that holds the parameters set for this `RowSet` object's current command.

### Class javax.sql.rowset.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.

### Class javax.sql.rowset.RowSetWarning extends SQLException implements Serializable

serialVersionUID:
  6678332766434564774L

## Package javax.sql.rowset.serial

### Class javax.sql.rowset.serial.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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException,
                             ClassNotFoundException

writeObject is called to save the state of the `SerialArray` to a stream.

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### 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.

#### 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.

#### 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 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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException,
                             ClassNotFoundException

writeObject is called to save the state of the SerialBlob to a stream.

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### buf

    byte[] buf

A serialized array of uninterpreted bytes representing the value of this `SerialBlob` object.

#### blob

    Blob blob

The internal representation of the `Blob` object on which this `SerialBlob` object is based.

#### 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 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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException,
                             ClassNotFoundException

writeObject is called to save the state of the SerialClob to a stream.

Throws:
  `IOException`
  `ClassNotFoundException`

### 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 extends Object implements Serializable

serialVersionUID:
  2826907821828733626L

### Serialized Fields

#### url

    URL url

The extracted URL field retrieved from the DATALINK field.

#### baseType

    int baseType

The SQL type of the elements in this `SerialDatalink` object. The type is expressed as one of the contants 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.

### Class javax.sql.rowset.serial.SerialException extends SQLException implements Serializable

serialVersionUID:
  -489794565168592690L

### Class javax.sql.rowset.serial.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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

writeObject is called to save the state of the `SerialJavaObject` to a stream.

Throws:
  `IOException`

### Serialized Fields

#### obj

    Object obj

Placeholder for object to be serialized.

#### chain

    Vector<E> chain

A container for the warnings issued on this `SerialJavaObject` object. When there are multiple warnings, each warning is chained to the previous warning.

### Class javax.sql.rowset.serial.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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException,
                             ClassNotFoundException

writeObject is called to save the state of the SerialRef to a stream.

Throws:
  `IOException`
  `ClassNotFoundException`

### 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 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.

Throws:
  `IOException`
  `ClassNotFoundException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException,
                             ClassNotFoundException

writeObject is called to save the state of the `SerialStruct` to a stream.

Throws:
  `IOException`
  `ClassNotFoundException`

### Serialized Fields

#### 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.

#### 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.

## Package javax.sql.rowset.spi

### Class javax.sql.rowset.spi.SyncFactoryException extends SQLException implements Serializable

serialVersionUID:
  -4354595476433200352L

### Class javax.sql.rowset.spi.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

### Class javax.transaction.InvalidTransactionException extends RemoteException implements Serializable

### Class javax.transaction.TransactionRequiredException extends RemoteException implements Serializable

### Class javax.transaction.TransactionRolledbackException extends RemoteException implements Serializable

## Package javax.transaction.xa

### Class javax.transaction.xa.XAException extends Exception implements Serializable

### Serialized Fields

#### errorCode

    int errorCode

The error code with which to create the SystemException.
The error code for the exception

## Package javax.xml.bind

### Class javax.xml.bind.DataBindingException extends RuntimeException implements Serializable

### Class javax.xml.bind.JAXBElement extends Object implements Serializable

serialVersionUID:
  1L

### Serialized Fields

#### name

    QName name

xml element tag name

#### declaredType

    Class<T> declaredType

Java datatype binding for xml element declaration's type.

#### scope

    Class<T> scope

Scope of xml element declaration representing this xml element instance. Can be one of the following values: - `JAXBElement.GlobalScope` for global xml element declaration. - local element declaration has a scope set to the Java class representation of complex type defintion containing xml element declaration.

#### value

    Object value

xml element value. Represents content model and attributes of an xml element instance.

#### nil

    boolean nil

true iff the xml element instance has xsi:nil="true".

### Class javax.xml.bind.JAXBException extends Exception implements Serializable

serialVersionUID:
  -5621384651494307979L

### Serialized Fields

#### errorCode

    String errorCode

Vendor specific error code

#### linkedException

    Throwable linkedException

Exception reference

### Class javax.xml.bind.JAXBPermission extends BasicPermission implements Serializable

serialVersionUID:
  1L

### Class javax.xml.bind.MarshalException extends JAXBException implements Serializable

### Class javax.xml.bind.PropertyException extends JAXBException implements Serializable

### Class javax.xml.bind.TypeConstraintException extends RuntimeException implements Serializable

serialVersionUID:
  -3059799699420143848L

### Serialized Fields

#### errorCode

    String errorCode

Vendor specific error code

#### linkedException

    Throwable linkedException

Exception reference

### Class javax.xml.bind.UnmarshalException extends JAXBException implements Serializable

### Class javax.xml.bind.ValidationException extends JAXBException implements Serializable

## Package javax.xml.crypto

### Class javax.xml.crypto.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.

### Class javax.xml.crypto.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.

### Class javax.xml.crypto.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.

### Class javax.xml.crypto.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

## Package javax.xml.crypto.dsig

### Class javax.xml.crypto.dsig.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.

### Class javax.xml.crypto.dsig.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

### Class javax.xml.datatype.DatatypeConfigurationException extends Exception implements Serializable

## Package javax.xml.namespace

### Class javax.xml.namespace.QName extends Object implements Serializable

### Serialized Fields

#### namespaceURI

    String namespaceURI

Namespace URI of this `QName`.

#### localPart

    String localPart

local part of this `QName`.

#### prefix

    String prefix

prefix of this `QName`.

## Package javax.xml.parsers

### Class javax.xml.parsers.FactoryConfigurationError extends Error implements Serializable

serialVersionUID:
  -827108682472263355L

### Serialized Fields

#### exception

    Exception exception

`Exception` that represents the error.

### Class javax.xml.parsers.ParserConfigurationException extends Exception implements Serializable

## Package javax.xml.soap

### Class javax.xml.soap.SOAPException extends Exception implements Serializable

### Serialized Fields

#### cause

    Throwable cause

## Package javax.xml.stream

### Class javax.xml.stream.FactoryConfigurationError extends Error implements Serializable

serialVersionUID:
  -2994412584589975744L

### Serialized Fields

#### nested

    Exception nested

### Class javax.xml.stream.XMLStreamException extends Exception implements Serializable

### Serialized Fields

#### nested

    Throwable nested

#### location

    Location location

## Package javax.xml.transform

### Class javax.xml.transform.TransformerConfigurationException extends TransformerException implements Serializable

serialVersionUID:
  1285547467942875745L

### Class javax.xml.transform.TransformerException extends Exception implements Serializable

serialVersionUID:
  975798773772956428L

### Serialized Fields

#### locator

    SourceLocator locator

Field locator specifies where the error occurred

#### containedException

    Throwable containedException

Field containedException specifies a wrapped exception. May be null.

### Class javax.xml.transform.TransformerFactoryConfigurationError extends Error implements Serializable

serialVersionUID:
  -6527718720676281516L

### Serialized Fields

#### exception

    Exception exception

`Exception` for the `TransformerFactoryConfigurationError`.

## Package javax.xml.validation

### Class javax.xml.validation.SchemaFactoryConfigurationError extends Error implements Serializable

serialVersionUID:
  3531438703147750126L

## Package javax.xml.ws

### Class javax.xml.ws.Holder extends Object implements Serializable

serialVersionUID:
  2623699057546497185L

### Serialized Fields

#### value

    Object value

The value contained in the holder.

### Class javax.xml.ws.ProtocolException extends WebServiceException implements Serializable

### Class javax.xml.ws.WebServiceException extends RuntimeException implements Serializable

### Class javax.xml.ws.WebServicePermission extends BasicPermission implements Serializable

serialVersionUID:
  -146474640053770988L

## Package javax.xml.ws.http

### Class javax.xml.ws.http.HTTPException extends ProtocolException implements Serializable

### Serialized Fields

#### statusCode

    int statusCode

## Package javax.xml.ws.soap

### Class javax.xml.ws.soap.SOAPFaultException extends ProtocolException implements Serializable

### Serialized Fields

#### fault

    SOAPFault fault

## Package javax.xml.xpath

### Class javax.xml.xpath.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.

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.

Throws:
  `IOException` - thrown by `ObjectOutputStream`

### Class javax.xml.xpath.XPathExpressionException extends XPathException implements Serializable

serialVersionUID:
  -1837080260374986980L

### Class javax.xml.xpath.XPathFactoryConfigurationException extends XPathException implements Serializable

serialVersionUID:
  -1837080260374986980L

### Class javax.xml.xpath.XPathFunctionException extends XPathExpressionException implements Serializable

serialVersionUID:
  -1837080260374986980L

## Package org.ietf.jgss

### Class org.ietf.jgss.GSSException extends Exception implements Serializable

serialVersionUID:
  -2706218945227726672L

### Serialized Fields

#### major

    int major

The major code for this exception

#### minor

    int minor

The minor code for this exception

#### minorMessage

    String minorMessage

The text string for minor code

#### majorString

    String majorString

Alternate text string for major code

## Package org.omg.CosNaming

### Class org.omg.CosNaming._BindingIteratorImplBase extends DynamicImplementation implements Serializable

### Class org.omg.CosNaming._BindingIteratorStub extends ObjectImpl implements Serializable

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException

Throws:
  `IOException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Throws:
  `IOException`

### Class org.omg.CosNaming._NamingContextExtStub extends ObjectImpl implements Serializable

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException

Throws:
  `IOException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Throws:
  `IOException`

### Class org.omg.CosNaming._NamingContextImplBase extends DynamicImplementation implements Serializable

### Class org.omg.CosNaming._NamingContextStub extends ObjectImpl implements Serializable

### Serialization Methods

#### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException

Throws:
  `IOException`

#### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

Throws:
  `IOException`

### Class org.omg.CosNaming.Binding extends Object implements Serializable

### Serialized Fields

#### binding_name

    NameComponent[] binding_name

#### binding_type

    BindingType binding_type

### Class org.omg.CosNaming.BindingType extends Object implements Serializable

### Serialized Fields

#### __value

    int __value

### Class org.omg.CosNaming.NameComponent extends Object implements Serializable

### Serialized Fields

#### id

    String id

#### kind

    String kind

## Package org.w3c.dom

### Class org.w3c.dom.DOMException extends RuntimeException implements Serializable

serialVersionUID:
  6627732366795969916L

### Serialized Fields

#### code

    short code

## Package org.w3c.dom.events

### Class org.w3c.dom.events.EventException extends RuntimeException implements Serializable

### Serialized Fields

#### code

    short code

## Package org.w3c.dom.ls

### Class org.w3c.dom.ls.LSException extends RuntimeException implements Serializable

### Serialized Fields

#### code

    short code

## Package org.xml.sax

### Class org.xml.sax.SAXException extends Exception implements Serializable

serialVersionUID:
  583241635256073760L

### Serialized Fields

#### exception

    Exception exception

The embedded exception if tunnelling, or null.

### Class org.xml.sax.SAXNotRecognizedException extends SAXException implements Serializable

serialVersionUID:
  5440506620509557213L

### Class org.xml.sax.SAXNotSupportedException extends SAXException implements Serializable

serialVersionUID:
  -1422818934641823846L

### Class org.xml.sax.SAXParseException extends SAXException implements Serializable

serialVersionUID:
  -5651165872476709336L

### Serialized Fields

#### publicId

    String publicId

The public identifier, or null.

See Also:
  `SAXParseException.getPublicId()`

#### systemId

    String systemId

The system identifier, or null.

See Also:
  `SAXParseException.getSystemId()`

#### lineNumber

    int lineNumber

The line number, or -1.

See Also:
  `SAXParseException.getLineNumber()`

#### columnNumber

    int columnNumber

The column number, or -1.

See Also:
  `SAXParseException.getColumnNumber()`