Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| J2ME CDC
PREV NEXT | FRAMES NO FRAMES

# Serialized Form

Package java.io

Class java.io.CharConversionException implements Serializable

Class java.io.EOFException implements Serializable

Class java.io.File implements Serializable

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 seperator is replaced by the local separator.

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

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

Class java.io.FilePermission implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

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

### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

  WriteObject is called to save the state of the FilePermission to a stream. The actions are serialized, and the superclass takes care of the name.

Serialized Fields

### actions

    String actions

  the actions string.

Class java.io.InterruptedIOException implements Serializable

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

Serialized Fields

### classname

    String classname

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

Class java.io.InvalidObjectException implements Serializable

Class java.io.IOException implements Serializable

Class java.io.NotActiveException implements Serializable

Class java.io.NotSerializableException implements Serializable

Class java.io.ObjectStreamClass implements Serializable

Serialization Overview

  Class ObjectStreamClass is special cased within the Serialization Stream Protocol. An ObjectStreamClass is written intially into an ObjectOutputStream in the following format:

            TC_CLASSDESC className, serialVersionUID, flags,
                         length, list of field descriptions.

       FIELDNAME        TYPES
                        DESCRIPTION
       --------------------------------------
       className        primitive data String
                        Fully qualified class name.

       serialVersionUID long
                        Stream Unique Identifier for compatible classes
                        with same base class name.

       flags            byte
                        Attribute bit fields defined in
                        java.io.ObjectStreamConstants.SC_*.

       length           short
                        The number of field descriptions to follow.

       fieldDescription (byte, primitive data String, String Object)
                        A pseudo-externalized format of class
                        java.io.ObjectStreamField.
                        Consists of typeCode, fieldName, and,
                        if a nonPrimitive typecode, a fully qualified
                        class name. See Class.getName method
                        for the typecode byte encodings.

  The first time the class descriptor is written into the stream, a new handle is generated. Future references to the class descriptor are written as references to the initial class descriptor instance.
  See Also:
    `ObjectOutputStream.writeUTF(java.lang.String)`

Serialized Fields

Class java.io.ObjectStreamException implements Serializable

Class java.io.OptionalDataException implements Serializable

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

Serialized Fields

### actions

    String actions

Class java.io.StreamCorruptedException implements Serializable

Class java.io.SyncFailedException implements Serializable

Class java.io.UnsupportedEncodingException implements Serializable

Class java.io.UTFDataFormatException implements Serializable

Class java.io.WriteAbortedException implements Serializable

Serialized Fields

### detail

    Exception detail

  Exception that was caught while writing the ObjectStream.

Package java.lang

Class java.lang.AbstractMethodError implements Serializable

Class java.lang.ArithmeticException implements Serializable

Class java.lang.ArrayIndexOutOfBoundsException implements Serializable

Class java.lang.ArrayStoreException implements Serializable

Class java.lang.Boolean implements Serializable

Serialized Fields

### value

    boolean value

  The value of the Boolean.

Class java.lang.Byte implements Serializable

Serialized Fields

### value

    byte value

  The value of the Byte.

Class java.lang.Character implements Serializable

Serialized Fields

### value

    char value

  The value of the Character.

Class java.lang.Class implements Serializable

Serialization Overview

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

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

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

Serialized Fields

Class java.lang.ClassCastException implements Serializable

Class java.lang.ClassCircularityError implements Serializable

Class java.lang.ClassFormatError implements Serializable

Class java.lang.ClassNotFoundException implements Serializable

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

Class java.lang.Double implements Serializable

Serialized Fields

### value

    double value

  The value of the Double.

Class java.lang.Error implements Serializable

Class java.lang.Exception implements Serializable

Class java.lang.ExceptionInInitializerError implements Serializable

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

Serialized Fields

### value

    float value

  The value of the Float.

Class java.lang.IllegalAccessError implements Serializable

Class java.lang.IllegalAccessException implements Serializable

Class java.lang.IllegalArgumentException implements Serializable

Class java.lang.IllegalMonitorStateException implements Serializable

Class java.lang.IllegalStateException implements Serializable

Class java.lang.IllegalThreadStateException implements Serializable

Class java.lang.IncompatibleClassChangeError implements Serializable

Class java.lang.IndexOutOfBoundsException implements Serializable

Class java.lang.InstantiationError implements Serializable

Class java.lang.InstantiationException implements Serializable

Class java.lang.Integer implements Serializable

Serialized Fields

### value

    int value

  The value of the Integer.

Class java.lang.InternalError implements Serializable

Class java.lang.InterruptedException implements Serializable

Class java.lang.LinkageError implements Serializable

Class java.lang.Long implements Serializable

Serialized Fields

### value

    long value

  The value of the Long.

Class java.lang.NegativeArraySizeException implements Serializable

Class java.lang.NoClassDefFoundError implements Serializable

Class java.lang.NoSuchFieldError implements Serializable

Class java.lang.NoSuchFieldException implements Serializable

Class java.lang.NoSuchMethodError implements Serializable

Class java.lang.NoSuchMethodException implements Serializable

Class java.lang.NullPointerException implements Serializable

Class java.lang.Number implements Serializable

Class java.lang.NumberFormatException implements Serializable

Class java.lang.OutOfMemoryError implements Serializable

Class java.lang.RuntimeException implements Serializable

Class java.lang.RuntimePermission implements Serializable

Class java.lang.SecurityException implements Serializable

Class java.lang.Short implements Serializable

Serialized Fields

### value

    short value

  The value of the Short.

Class java.lang.StackOverflowError implements Serializable

Class java.lang.String implements Serializable

Serialization Overview

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

            TC_STRING (utf String)

  The String is written by method `DataOutput.writeUTF`. A new handle is generated to refer to all future references to the string instance within the stream.

Serialized Fields

Class java.lang.StringBuffer implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

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

Serialized Fields

### value

    char[] value

  The value is used for character storage.

### count

    int count

  The count is the number of characters in the buffer.

### shared

    boolean shared

  A flag indicating whether the buffer is shared

Class java.lang.StringIndexOutOfBoundsException implements Serializable

Class java.lang.ThreadDeath implements Serializable

Class java.lang.Throwable implements Serializable

Serialized Fields

### detailMessage

    String detailMessage

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

Class java.lang.UnsatisfiedLinkError implements Serializable

Class java.lang.UnsupportedClassVersionError implements Serializable

Class java.lang.UnsupportedOperationException implements Serializable

Class java.lang.VerifyError implements Serializable

Class java.lang.VirtualMachineError implements Serializable

Package java.lang.reflect

Class java.lang.reflect.InvocationTargetException implements Serializable

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.Proxy implements Serializable

Serialized Fields

### h

    InvocationHandler h

  the invocation handler for this proxy instance.

Class java.lang.reflect.ReflectPermission implements Serializable

Class java.lang.reflect.UndeclaredThrowableException implements Serializable

Serialized Fields

### undeclaredThrowable

    Throwable undeclaredThrowable

  the undeclared checked exception that was thrown

Package java.math

Class java.math.BigInteger implements Serializable

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.

Serialized Fields

### signum

    int signum

  The signum of this BigInteger: -1 for negative, 0 for zero, or 1 for positive. Note that the BigInteger zero must have a signum of 0. This is necessary to ensures that there is exactly one representation for each BigInteger value.

### magnitude

    byte[] magnitude

  This field is required for historical reasons. The magnitude of a BigInteger used to be in a byte representation, and is still serialized that way. The mag field is used in all real computations but the magnitude field is required for storage.

### bitCount

    int bitCount

  The bitCount of this BigInteger, as returned by bitCount(), or -1 (either value is acceptable).
  See Also:
    `BigInteger.bitCount()`

### bitLength

    int bitLength

  The bitLength of this BigInteger, as returned by bitLength(), or -1 (either value is acceptable).
  See Also:
    `BigInteger.bitLength()`

### lowestSetBit

    int lowestSetBit

  The lowest set bit of this BigInteger, as returned by getLowestSetBit(), or -2 (either value is acceptable).
  See Also:
    `BigInteger.getLowestSetBit()`

### firstNonzeroByteNum

    int firstNonzeroByteNum

  The index of the lowest-order byte in the magnitude of this BigInteger that contains a nonzero byte, or -2 (either value is acceptable). The least significant byte has int-number 0, the next byte in order of increasing significance has byte-number 1, and so forth.

Package java.net

Class java.net.ConnectException implements Serializable

Class java.net.InetAddress implements Serializable

Serialized Fields

### hostName

    String hostName

### address

    int address

### family

    int family

Class java.net.MalformedURLException implements Serializable

Class java.net.NetPermission implements Serializable

Class java.net.ProtocolException implements Serializable

Class java.net.SocketException implements Serializable

Class java.net.SocketPermission implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

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

### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

  WriteObject is called to save the state of the SocketPermission to a stream. The actions are serialized, and the superclass takes care of the name.

Serialized Fields

### actions

    String actions

  the actions string.

Class java.net.UnknownHostException implements Serializable

Class java.net.UnknownServiceException implements Serializable

Class java.net.URL implements Serializable

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.

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

Serialized Fields

### protocol

    String protocol

  The protocol to use (ftp, http, nntp, ... etc.) .

### host

    String host

  The host name in which to connect to.

### port

    int port

  The protocol port to connect to.

### file

    String file

  The specified file name on that host.

### authority

    String authority

  The authority part of this URL.

### ref

    String ref

  # reference.

### hashCode

    int hashCode

Package java.security

Class java.security.AccessControlException implements Serializable

Serialized Fields

### perm

    Permission perm

Class java.security.AllPermission implements Serializable

Class java.security.BasicPermission implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

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

Class java.security.CodeSource implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream ois)
                     throws IOException,
                            ClassNotFoundException

  Restores this object from a stream (i.e., deserializes it).

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

Serialized Fields

### location

    URL location

  The code location.

Class java.security.DigestException implements Serializable

Class java.security.GeneralSecurityException implements Serializable

Class java.security.GuardedObject implements Serializable

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.

Serialized Fields

### object

    Object object

### guard

    Guard guard

Class java.security.Identity implements Serializable

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 certificates

  Deprecated.
  The certificates for this identity.

Class java.security.IdentityScope implements Serializable

Class java.security.InvalidAlgorithmParameterException implements Serializable

Class java.security.InvalidKeyException implements Serializable

Class java.security.InvalidParameterException implements Serializable

Class java.security.KeyException implements Serializable

Class java.security.KeyManagementException implements Serializable

Class java.security.KeyPair implements Serializable

Serialized Fields

### privateKey

    PrivateKey privateKey

### publicKey

    PublicKey publicKey

Class java.security.KeyStoreException implements Serializable

Class java.security.NoSuchAlgorithmException implements Serializable

Class java.security.NoSuchProviderException implements Serializable

Class java.security.Permission implements Serializable

Serialized Fields

### name

    String name

Class java.security.PermissionCollection implements Serializable

Serialized Fields

### readOnly

    boolean readOnly

Class java.security.Permissions implements Serializable

Serialized Fields

### perms

    Hashtable perms

### allPermission

    PermissionCollection allPermission

Class java.security.PrivilegedActionException implements Serializable

Serialized Fields

### exception

    Exception exception

Class java.security.Provider implements Serializable

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.SecureRandom implements Serializable

Serialized Fields

### provider

    Provider provider

  The provider.
  Since:
    1.2

### secureRandomSpi

    SecureRandomSpi secureRandomSpi

  The provider implementation.
  Since:
    1.2

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

Class java.security.SecurityPermission implements Serializable

Class java.security.SignatureException implements Serializable

Class java.security.Signer implements Serializable

Serialized Fields

### privateKey

    PrivateKey privateKey

  Deprecated.
  The signer's private key.

Class java.security.UnrecoverableKeyException implements Serializable

Class java.security.UnresolvedPermission implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream ois)
                     throws IOException,
                            ClassNotFoundException

  Restores this object from a stream (i.e., deserializes it).

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

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.

Package java.security.cert

Class java.security.cert.Certificate implements Serializable

Serialized Fields

### type

    String type

Class java.security.cert.Certificate.CertificateRep implements Serializable

Serialized Fields

### type

    String type

### data

    byte[] data

Class java.security.cert.CertificateEncodingException implements Serializable

Class java.security.cert.CertificateException implements Serializable

Class java.security.cert.CertificateExpiredException implements Serializable

Class java.security.cert.CertificateNotYetValidException implements Serializable

Class java.security.cert.CertificateParsingException implements Serializable

Class java.security.cert.CRLException implements Serializable

Class java.security.cert.X509Certificate implements Serializable

Package java.security.spec

Class java.security.spec.InvalidKeySpecException implements Serializable

Class java.security.spec.InvalidParameterSpecException implements Serializable

Package java.text

Class java.text.ChoiceFormat implements Serializable

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.

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

Serialized Fields

### calendar

    Calendar calendar

  The calendar that `DateFormat` uses to produce the time field values needed to implement date and time formatting. Subclasses should initialize this 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.DateFormatSymbols implements Serializable

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 savings time
  - `zoneStrings[i][4]` - short name of zone in daylight savings time
  The zone ID is not localized; it corresponds to the ID value associated with a system time zone object. All other entries are localized names. If a zone does not implement daylight savings time, the daylight savings time names are ignored.
  See Also:
    `DateFormatZoneData`, `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.

Class java.text.DecimalFormat implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream stream)
                     throws IOException,
                            ClassNotFoundException

  First, read the default serializable fields from the stream. Then 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. Finally, set serialVersionOnStream back to the maximum allowed value so that default serialization will work properly if this object is streamed out again.

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

  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.

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.

  See Also:
    `#positivePrefix`, `#expandAffix`
  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.
  See Also:
    `#positiveSuffix`, `#posPrefixPattern`
  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.
  See Also:
    `#negativePrefix`, `#posPrefixPattern`
  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.
  See Also:
    `#negativeSuffix`, `#posPrefixPattern`
  Since:
    1.3

### multiplier

    int multiplier

  The multiplier for use in percent, permill, 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()`

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

### 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`.
  Since:
    1.2

Class java.text.DecimalFormatSymbols implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream stream)
                     throws IOException,
                            ClassNotFoundException

  Read the default serializable fields, then if `serialVersionOnStream` is less than 1, initialize `monetarySeparator` to be the same as `decimalSeparator` and `exponential` to be 'E'. Finally, set serialVersionOnStream back to the maximum allowed value so that default serialization will work properly if this object is streamed out again.
  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 mille percent 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

  Character used to represent infinity.
  See Also:
    `DecimalFormatSymbols.getInfinity()`

### NaN

    String NaN

  Character used to represent NaN.
  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

  International string denoting the local currency, e.g. "USD".
  See Also:
    `DecimalFormatSymbols.getInternationalCurrencySymbol()`

### monetarySeparator

    char monetarySeparator

  The decimal separator used when formatting currency values.
  See Also:
    `DecimalFormatSymbols.getMonetaryDecimalSeparator()`
  Since:
    JDK 1.1.6

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

### 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 includes two new fields: `monetarySeparator` and `exponential`.
  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 implements Serializable

Class java.text.MessageFormat implements Serializable

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.

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 ten formatters, which are used to format the first ten 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.NumberFormat implements Serializable

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

  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.
  Since:
    1.2

Serialized Fields

### groupingUsed

    boolean groupingUsed

  True if the 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`.
  See Also:
    `NumberFormat.getMaximumIntegerDigits()`
  Since:
    1.2

### 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`.
  See Also:
    `NumberFormat.getMinimumIntegerDigits()`
  Since:
    1.2

### 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`.
  See Also:
    `NumberFormat.getMaximumFractionDigits()`
  Since:
    1.2

### 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`.
  See Also:
    `NumberFormat.getMinimumFractionDigits()`
  Since:
    1.2

### 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.ParseException implements Serializable

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

Serialization Methods

### readObject

    private void readObject(ObjectInputStream stream)
                     throws IOException,
                            ClassNotFoundException

  Override readObject.

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

Package java.util

Class java.util.ArrayList implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

  Reconstitute the `ArrayList` instance from a stream (that is, deserialize it).

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

Serialized Fields

### size

    int size

  The size of the ArrayList (the number of elements it contains).

Class java.util.Calendar implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream stream)
                     throws IOException,
                            ClassNotFoundException

  Reconstitute this object from a stream (i.e., deserialize it).

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

Serialized Fields

### fields

    int[] fields

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

### 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.ConcurrentModificationException implements Serializable

Class java.util.Date implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

  Reconstitute this object from a stream (i.e., deserialize it).

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

Class java.util.EmptyStackException implements Serializable

Class java.util.EventObject implements Serializable

Class java.util.GregorianCalendar implements Serializable

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

Serialization Methods

### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

  Reconstitute the `HashMap` instance from a stream (i.e., deserialize it).

### 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 of the HashMap (the number of key-value mappings), followed by the key (Object) and value (Object) for each key-value mapping represented by the HashMap The key-value mappings are emitted in no particular order.

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.HashSet implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

  Reconstitute the `HashSet` instance from a stream (that is, deserialize it).

### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

  Save the state of this `HashSet` instance to a stream (that is, serialize this set).
  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.

Class java.util.Hashtable implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

  Reconstitute the Hashtable from a stream (i.e., deserialize it).

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

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.LinkedList implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

  Reconstitute this `LinkedList` instance from a stream (that is deserialize it).

### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

  Save the state of this `LinkedList` instance to a stream (that is, serialize 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.

Class java.util.Locale implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream in)
                     throws IOException,
                            ClassNotFoundException

  Serial Data:
    The first three fields are three `String` objects: the first is a 2-letter ISO 639 code representing the locale's language, the second is a 2-letter ISO 3166 code representing the locale's region or country, and the third is an optional chain of variant codes defined by this library. Any of the fields may be the empty string. The fourth field is an `int`representing the locale's hash code, but is ignored by `readObject()`. Whatever this field's value, the hash code is initialized to -1, a sentinel value that indicates the hash code must be recomputed.

### writeObject

    private void writeObject(ObjectOutputStream out)
                      throws IOException

  Serial Data:
    The first three fields are three `String` objects: the first is a 2-letter ISO 639 code representing the locale's language, the second is a 2-letter ISO 3166 code representing the locale's region or country, and the third is an optional chain of variant codes defined by this library. Any of the fields may be the empty string. The fourth field is an `int` whose value is always -1. This is a sentinel value indicating the `Locale`'s hash code must be recomputed.

Serialized Fields

### language

    String language

  See Also:
    `Locale.getLanguage()`

### country

    String country

  See Also:
    `Locale.getCountry()`

### variant

    String variant

  See Also:
    `Locale.getVariant()`

### hashcode

    int hashcode

  Placeholder for the object's hash code. Always -1.

Class java.util.MissingResourceException implements Serializable

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

Class java.util.Properties implements Serializable

Serialized Fields

### defaults

    Properties defaults

  A property list that contains default values for any keys not found in this property list.

Class java.util.PropertyPermission implements Serializable

Serialization Methods

### readObject

    private void readObject(ObjectInputStream s)
                     throws IOException,
                            ClassNotFoundException

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

### writeObject

    private void writeObject(ObjectOutputStream s)
                      throws IOException

  WriteObject is called to save the state of the PropertyPermission to a stream. The actions are serialized, and the superclass takes care of the name.

Serialized Fields

### actions

    String actions

  The actions string.

Class java.util.Random implements Serializable

Serialized Fields

### seed

    long seed

  The internal state associated with this pseudorandom number generator. (The specs for the methods in this class describe the ongoing computation of this value.)

### nextNextGaussian

    double nextNextGaussian

### haveNextNextGaussian

    boolean haveNextNextGaussian

Class java.util.SimpleTimeZone implements Serializable

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.

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

Serialized Fields

### startMonth

    int startMonth

  The month in which daylight savings 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 savings time starts, from 1 to 28, 30, or 31, depending on the `startMonth`.
  `startMode != DOW_IN_MONTH`
    `startDay` indicates which `startDayOfWeek` in th month `startMonth` daylight savings 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 savings 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 savings 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:
      JDK 1.3

  ### endMonth

      int endMonth

    The month in which daylight savings 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 savings 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 savings 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 savings 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 savings 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:
        JDK 1.3

    ### startYear

        int startYear

      The year in which daylight savings time is first observed. This is an AD value. If this value is less than 1 then daylight savings 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 savings 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:
        JDK1.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:
        JDK1.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:
        JDK1.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:
        JDK1.1.4

    Class java.util.Stack implements Serializable

    Class java.util.TimeZone implements Serializable

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

    Class java.util.TreeMap implements Serializable

    Serialization Methods

    ### readObject

        private void readObject(ObjectInputStream s)
                         throws IOException,
                                ClassNotFoundException

      Reconstitute the `TreeMap` instance from a stream (i.e., deserialize it).

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

    Serialized Fields

    ### comparator

        Comparator comparator

      The Comparator used to maintain order in this TreeMap, or null if this TreeMap uses its elements natural ordering.

    Class java.util.TreeSet implements Serializable

    Serialization Methods

    ### readObject

        private void readObject(ObjectInputStream s)
                         throws IOException,
                                ClassNotFoundException

      Reconstitute the `TreeSet` instance from a stream (that is, deserialize it).

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

    Class java.util.Vector implements Serializable

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

    Class java.util.jar.JarException implements Serializable

    Package java.util.zip

    Class java.util.zip.DataFormatException implements Serializable

    Class java.util.zip.ZipException implements Serializable

    Package javax.microedition.io

    Class javax.microedition.io.ConnectionNotFoundException implements Serializable

    Overview | Package | Class | Use | Tree | Deprecated | Index | Help
    | J2ME CDC
    PREV NEXT | FRAMES NO FRAMES

    Java is a trademark or registred trademark of Sun Microsystems, Inc. in the US and other countries.
    Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
    Palo, Alto, California, 94303, U.S.A All Rights Reserved.