COMP 305: Object-Oriented Software Design

University of San Diego, Fall 2025

Object-Oriented Programming

Object-Oriented Programming (OOP) organizes code around objects - data structures that contain both data (attributes) and methods (functions) that operate on that data.

🎯 Encapsulation

Bundling data and methods together within objects.

🧬 Inheritance

Creating new classes based on existing ones.

🔄 Polymorphism

Objects of different types responding to the same interface.

🏗️ Abstraction

Hiding complex implementation details behind simple interfaces.