> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kinetica.com/llms.txt
> Use this file to discover all available pages before exploring further.

# TypeObjectMap.ClassFactory

> TypeObjectMap.ClassFactory — Kinetica Java API

<div className="kinetica-javadoc">
  <div className="header">
    <div className="sub-title"><span className="package-label-in-type">Package</span> <a href="/content/api/java/com/gpudb/package-summary">com.gpudb</a></div>
    <h1 title="Class TypeObjectMap.ClassFactory" className="title">Class TypeObjectMap.ClassFactory\<T></h1>
  </div>

  <div className="inheritance" title="Inheritance Tree">
    <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">java.lang.Object</a>
    <div className="inheritance">com.gpudb.TypeObjectMap.ClassFactory\<T></div>
  </div>

  <div className="section class-description" id="class-description">
    <div className="dl notes">
      <div className="dt">Type Parameters:</div>
      <div className="dd"><code>T</code> - the class that the factory creates instances of</div>
    </div>

    <div className="dl notes">
      <div className="dt">All Implemented Interfaces:</div>
      <div className="dd"><code><a href="/content/api/java/com/gpudb/TypeObjectMap.Factory" title="interface in com.gpudb">TypeObjectMap.Factory</a>\<T></code></div>
    </div>

    <div className="dl notes">
      <div className="dt">Enclosing class:</div>
      <div className="dd"><code><a href="/content/api/java/com/gpudb/TypeObjectMap" title="class in com.gpudb">TypeObjectMap</a>\<<a href="/content/api/java/com/gpudb/TypeObjectMap" title="type parameter in TypeObjectMap">T</a>></code></div>
    </div>

    <hr />

    <div className="type-signature"><span className="modifiers">public static final class </span><span className="element-name type-name-label">TypeObjectMap.ClassFactory\<T></span> <span className="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a> implements <a href="/content/api/java/com/gpudb/TypeObjectMap.Factory" title="interface in com.gpudb">TypeObjectMap.Factory</a>\<T></span></div>
    <div className="block">A factory that uses reflection to create new instances of the specified class. The class must have a public, parameterless constructor.</div>
  </div>

  <div className="section summary">
    <ul className="summary-list">
      <li>
        <div className="section constructor-summary" id="constructor-summary">
          <h2>Constructor Summary</h2>
          <div className="caption"><span>Constructors</span></div>

          <div className="summary-table two-column-summary">
            <div className="table-header col-first">Constructor</div>
            <div className="table-header col-last">Description</div>
            <div className="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.lang.Class)" className="member-name-link">ClassFactory</a><wbr />(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" className="external-link">Class</a>\<?> objectClass)</code></div>

            <div className="col-last even-row-color">
              <div className="block">Creates a <a href="/content/api/java/com/gpudb/TypeObjectMap.ClassFactory" title="class in com.gpudb"><code>TypeObjectMap.ClassFactory</code></a> for the specified class.</div>
            </div>
          </div>
        </div>
      </li>

      <li>
        <div className="section method-summary" id="method-summary">
          <h2>Method Summary</h2>

          <div id="method-summary-table">
            <div className="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabIndex="0" className="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabIndex="-1" className="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabIndex="-1" className="table-tab">Concrete Methods</button></div>

            <div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
              <div className="summary-table three-column-summary">
                <div className="table-header col-first">Modifier and Type</div>
                <div className="table-header col-second">Method</div>
                <div className="table-header col-last">Description</div>
                <div className="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="/content/api/java/com/gpudb/TypeObjectMap.ClassFactory" title="type parameter in TypeObjectMap.ClassFactory">T</a></code></div>
                <div className="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#newInstance()" className="member-name-link">newInstance</a>()</code></div>

                <div className="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
                  <div className="block">Creates a new object instance.</div>
                </div>
              </div>
            </div>
          </div>

          <div className="inherited-list">
            <h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a></h3>
            <code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" className="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" className="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" className="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" className="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" className="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" className="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" className="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" className="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" className="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" className="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" className="external-link">wait</a></code>
          </div>
        </div>
      </li>
    </ul>
  </div>

  <div className="section details">
    <ul className="details-list">
      <li>
        <div className="section constructor-details" id="constructor-detail">
          <h2>Constructor Details</h2>

          <ul className="member-list">
            <li>
              <div className="section detail" id="<init>(java.lang.Class)">
                <h3>ClassFactory</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="element-name">ClassFactory</span><wbr /><span className="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" className="external-link">Class</a>\<?> objectClass)</span></div>
                <div className="block">Creates a <a href="/content/api/java/com/gpudb/TypeObjectMap.ClassFactory" title="class in com.gpudb"><code>TypeObjectMap.ClassFactory</code></a> for the specified class. The class must have a public, parameterless constructor.</div>

                <div className="dl notes">
                  <div className="dt">Parameters:</div>
                  <div className="dd"><code>objectClass</code> - the class that the factory creates instances of</div>
                </div>
              </div>
            </li>
          </ul>
        </div>
      </li>

      <li>
        <div className="section method-details" id="method-detail">
          <h2>Method Details</h2>

          <ul className="member-list">
            <li>
              <div className="section detail" id="newInstance()">
                <h3>newInstance</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="/content/api/java/com/gpudb/TypeObjectMap.ClassFactory" title="type parameter in TypeObjectMap.ClassFactory">T</a></span> <span className="element-name">newInstance</span>()</div>
                <div className="block">Creates a new object instance.</div>

                <div className="dl notes">
                  <div className="dt">Specified by:</div>
                  <div className="dd"><code><a href="/content/api/java/com/gpudb/TypeObjectMap.Factory#newInstance()">newInstance</a></code> in interface <code><a href="/content/api/java/com/gpudb/TypeObjectMap.Factory" title="interface in com.gpudb">TypeObjectMap.Factory</a>\<<a href="/content/api/java/com/gpudb/TypeObjectMap.ClassFactory" title="type parameter in TypeObjectMap.ClassFactory">T</a>></code></div>
                  <div className="dt">Returns:</div>
                  <div className="dd">the new instance</div>
                  <div className="dt">Throws:</div>
                  <div className="dd"><code><a href="/content/api/java/com/gpudb/GPUdbRuntimeException" title="class in com.gpudb">GPUdbRuntimeException</a></code> - if an instance could not be created</div>
                </div>
              </div>
            </li>
          </ul>
        </div>
      </li>
    </ul>
  </div>
</div>
