org.objenesis.instantiator.gcj

## Class GCJInstantiatorBase<T>

- java.lang.Object
- - org.objenesis.instantiator.gcj.GCJInstantiatorBase<T>

- All Implemented Interfaces:
    ObjectInstantiator<T>
  Direct Known Subclasses:
    GCJInstantiator, GCJSerializationInstantiator

      public abstract class GCJInstantiatorBase<T>
      extends java.lang.Object
      implements ObjectInstantiator<T>

  Base class for GCJ-based instantiators. It initializes reflection access to method ObjectInputStream.newObject, as well as creating a dummy ObjectInputStream to be used as the "this" argument for the method.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected java.lang.Class<T>` | `type`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `GCJInstantiatorBase(java.lang.Class<T> type)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract T` | `newInstance()` Returns a new instance of an object.

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

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

- - ### Field Detail

    - #### type

          protected final java.lang.Class<T> type

  - ### Constructor Detail

    - #### GCJInstantiatorBase

          public GCJInstantiatorBase(java.lang.Class<T> type)

  - ### Method Detail

    - #### newInstance

          public abstract T newInstance()

      Description copied from interface: `ObjectInstantiator`
      Returns a new instance of an object. The returned object's class is defined by the implementation.
      Specified by:
        `newInstance` in interface `ObjectInstantiator<T>`
      Returns:
        A new instance of an object.