Abstraction is the object-oriented programming concept that hides complex implementation details and provides a simplified interface for interacting with objects. It allows users to focus on essential features while hiding unnecessary complexity.
While encapsulation is also related to hiding data within an object, abstraction specifically focuses on simplifying interactions by exposing only what is necessary for the user.