> ## Documentation Index
> Fetch the complete documentation index at: https://cantonfoundation-generated-reference-full-stack-preview.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Contract

> A superclass for all codegen-generated Contracts.

<div class="x2mdx-ref-page x2mdx-ref-page--collection" />

<p class="x2mdx-ref-back"><a href="./index">Back to package</a></p>

<div class="x2mdx-ref-hero">
  <p class="x2mdx-ref-eyebrow">com.daml.ledger.javaapi.data.codegen</p>

  <h1 class="x2mdx-ref-title">Contract</h1>

  <p class="x2mdx-ref-summary">A superclass for all codegen-generated Contracts.</p>

  <div class="x2mdx-ref-badges">
    <span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">Java</span>
  </div>

  <dl class="x2mdx-ref-meta-grid">
    <div class="x2mdx-ref-meta-item">
      <dt>Package</dt>
      <dd>com.daml.ledger.javaapi.data.codegen</dd>
    </div>

    <div class="x2mdx-ref-meta-item">
      <dt>Upstream docs</dt>
      <dd><a href="https://javadoc.io/doc/com.daml/bindings-java/3.5.15/com/daml/ledger/javaapi/data/codegen/Contract.html">Open Javadoc</a></dd>
    </div>
  </dl>
</div>

## Signature

```java theme={"theme":{"light":"github-light","dark":"github-dark"}}
public abstract class Contract<Id,Data> extends Object implements Contract
```

## Members

| Member                | Lifecycle | Upstream docs                                                                                                                                |
| --------------------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`                | -         | [Open](https://javadoc.io/doc/com.daml/bindings-java/3.5.15/com/daml/ledger/javaapi/data/codegen/Contract.html#data)                         |
| `equals(Object)`      | -         | [Open](https://javadoc.io/doc/com.daml/bindings-java/3.5.15/com/daml/ledger/javaapi/data/codegen/Contract.html#equals%28java.lang.Object%29) |
| `getContractTypeId()` | -         | [Open](https://javadoc.io/doc/com.daml/bindings-java/3.5.15/com/daml/ledger/javaapi/data/codegen/Contract.html#getContractTypeId%28%29)      |
| `hashCode()`          | -         | [Open](https://javadoc.io/doc/com.daml/bindings-java/3.5.15/com/daml/ledger/javaapi/data/codegen/Contract.html#hashCode%28%29)               |
| `id`                  | -         | [Open](https://javadoc.io/doc/com.daml/bindings-java/3.5.15/com/daml/ledger/javaapi/data/codegen/Contract.html#id)                           |
| `observers`           | -         | [Open](https://javadoc.io/doc/com.daml/bindings-java/3.5.15/com/daml/ledger/javaapi/data/codegen/Contract.html#observers)                    |
| `signatories`         | -         | [Open](https://javadoc.io/doc/com.daml/bindings-java/3.5.15/com/daml/ledger/javaapi/data/codegen/Contract.html#signatories)                  |
| `toString()`          | -         | [Open](https://javadoc.io/doc/com.daml/bindings-java/3.5.15/com/daml/ledger/javaapi/data/codegen/Contract.html#toString%28%29)               |
