Object-Oriented Programming (OOP)

1. Definition

OOP organizes code around objects combining data and behavior, using encapsulation, inheritance, polymorphism, and abstraction.

Core Principles

Encapsulation: Hide data; expose via methods.

Inheritance: Reuse code via class hierarchies.

Polymorphism: Same interface, different behaviors.

Abstraction: Model essentials, ignore details.