Abstraction in object-oriented programming is a technique to represent the high-level information about a problem by building an object. Abstraction is implemented with the help of the interface and the implementation of the interface is done using the actual code. Abstraction is implemented where the concrete details are hidden from the consuming modules by providing it with a different interface. Abstraction is implemented to hide the implementation details of the low-level details. It is also used to hide the complex details and provide the simpler interface to the user.