Welcome to Day 3! Today we explore how classes share, extend, and adapt behavior without duplicating code.

Inheritance: Creating new classes based on existing ones to reuse code and establish hierarchies.

Method Overriding & super(): Redefining parent class behaviors in child classes while retaining access to parent implementations.

Polymorphism & Duck Typing: Operating on different object types through a shared interface or common set of methods.

1. Inheritance Structures 🌳