Common

Composition over inheritance

Software design pattern

Composition over inheritance

Common card · No. 200296

In object-oriented programming, composition over inheritance (sometimes composition with forwarding or composite reuse) is a common design pattern that tries to achieve code reuse without requiring inheritance. Instead of having two child classes inherit functionality from a common parent, composition simulates inheritance by having the children include a copy of a "pseudo-parent" class as a field, which implements the functionality common to the two classes. Then, methods that would have been called on the child are instead called on the pseudo-parent, a technique called method forwarding. Composition is generally used in languages where inheritance is unavailable or has an implementation that is considered inflexible, inconvenient, or inadequate (e.g. because a language lacks multiple inheritance). However, many problems that are easily solved with inheritance are difficult to solve using only composition; as a result, inheritance and object composition typically work hand-in-hand, as...

Read on Wikipedia · Image Sae1962, CC BY-SA 3.0

Open boosters, collect cards and trade them. Free to play.

Play for free
Composition over inheritance – Common Wikipedia card | Wikiverse TCG