- Models real-world entities as objects with attributes (data) and behaviors (methods).
- Characteristics:
- Advantages:
- Promotes reusability, modularity, and scalability.
- Makes it easier to model real-world scenarios.
- Disadvantages:
- Can have a steep learning curve.
- May introduce unnecessary complexity in simple applications.