A programming paradigm that emphasizes the use of objects and classes to model real-world objects and systems.