Give me a high-level overview of Object-Oriented programming.
Sigiloso
Object Oriented Programming (OOP) use languages which incorporate objects (classes) that are self-contained collections of computational procedures and data structures. OOP is a programming paradigm that use techniques and features such as data abstraction, encapsulation, messaging, modularity, polymorphism, and inheritance