weka.core

## Class SerializedObject

- java.lang.Object
- - weka.core.SerializedObject

- All Implemented Interfaces:
    java.io.Serializable, RevisionHandler

      public class SerializedObject
      extends java.lang.Object
      implements java.io.Serializable, RevisionHandler

  Class for storing an object in serialized form in memory. It can be used to make deep copies of objects, and also allows compression to conserve memory.

  Version:
    $Revision: 8034 $
  Author:
    Richard Kirkby (rbk1@cs.waikato.ac.nz)
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SerializedObject(java.lang.Object toStore)` Creates a new serialized object (without compression).
    `SerializedObject(java.lang.Object toStore, boolean compress)` Creates a new serialized object.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(java.lang.Object compareTo)`
    `java.lang.Object` | `getObject()` Returns a serialized object.
    `java.lang.String` | `getRevision()` Returns the revision string.
    `int` | `hashCode()` Returns a hashcode for this object.

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SerializedObject

          public SerializedObject(java.lang.Object toStore)
                           throws java.lang.Exception

      Creates a new serialized object (without compression).
      Parameters:
        `toStore` - the object to store
      Throws:
        `java.lang.Exception` - if the object couldn't be serialized

    - #### SerializedObject

          public SerializedObject(java.lang.Object toStore,
                                  boolean compress)
                           throws java.lang.Exception

      Creates a new serialized object.
      Parameters:
        `toStore` - the object to store
        `compress` - whether or not to use compression
      Throws:
        `java.lang.Exception` - if the object couldn't be serialized

  - ### Method Detail

    - #### equals

          public final boolean equals(java.lang.Object compareTo)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### hashCode

          public int hashCode()

      Returns a hashcode for this object.
      Overrides:
        `hashCode` in class `java.lang.Object`
      Returns:
        the hashcode

    - #### getObject

          public java.lang.Object getObject()

      Returns a serialized object. Uses org.python.util.PythonObjectInputStream for Jython objects (read here for more details).
      Returns:
        the restored object
      Throws:
        `java.lang.Exception` - if the object couldn't be restored

    - #### getRevision

          public java.lang.String getRevision()

      Returns the revision string.
      Specified by:
        `getRevision` in interface `RevisionHandler`
      Returns:
        the revision