# Specifying entity inheritance

An entity may inherit properties from other entities. You can specify a specific strategy to use for inheritance.

Use this procedure to specify inheritance (`@Inheritance)` for an existing entity (`@Entity`):

1. Select the entity in the Project Explorer.

2. In the JPA Details view, select the Inheritance information.

   Specifying Inheritance

3. In the Strategy list, select one of the following the inheritance strategies:

   - A single table (default)

   - Joined table

   - One table per class

4. Complete the fields in the Inheritance area.

   Use the following table to complete the remaining fields on the tab. See "Inheritance" for additional details.

Eclipse adds the following annotations the entity field:

    @Inheritance(strategy=InheritanceType.<INHERITANCE_STRATEGY>)
    @DiscriminatorColumn(name="<DISCRIMINATOR_COLUMN>",
        discriminatorType=<DISCRIMINATOR_TYPE>)
    @DiscriminatorValue(value-"<DISCRIMINATOR_VALUE>")
    @PrimaryKeyJoinColumn(name="<JOIN_COLUMN_NAME>",
        referencedColumnName = "<REFERENCED_COLUMN_NAME>")

The following figures illustrates the different inheritance strategies.

Single Table Inheritance

Joined Table Inheritance

Related reference

- Adding persistence to a class

Related concepts

- Understanding Java persistence