OOP involves breaking large programs into smaller, more manageable components called objects. It simplifies maintenance and improves program organization.
Abstraction refers to hiding an application's internal details from the public. Basically, it is the interaction of a user with a subset of an object's characteristics and functions.
Encapsulation = Data Hiding + Abstraction In this method, all critical information is encapsulated inside an object, and only a subset of it is revealed to the outside world.