Composition vs Inheritance
← Back to Core OOP Concepts
“Has-a” vs “is-a” relationships. Favor composition for flexibility — compose objects by combining simpler behaviors rather than creating deep inheritance hierarchies. Composition allows changing behavior at runtime and avoids tight coupling between parent and child classes.
Key Properties
Related
- Inheritance (contrast)
- Strategy (composition-based pattern)
- Decorator (composition-based pattern)