Polylithism
<programming> A property of a data-object that can exist in many shapes and sizes, but not simultaneously; which distinguishes it from a
union.
It is often implemented as a set of classes (or structs) derived from a common
base class (or with a common header, as in the case of structs), typically without any
methods.
It has been loosely described as
polymorphic data.
[Clarification?]