Abstraction Data Abstraction
Abstract Data Type Abstraction Layer
Procedural Abstraction Class
Object Encapsulation

 

A method of hiding complex data details by providing a simplified, high-level interface for interaction. The process of reducing complexity by focusing on essential features while ignoring irrelevant details.
A simplified interface is provided to hide the complexity of lower-level components. A data type that specifies only the functionality and not the specific way it is implemented.
A blueprint for creating objects that encapsulates data and behavior. A method that hides detailed steps of a process, showing only necessary information to use it effectively.
The bundling of data and methods that operate on that data within a single unit. An instance of a class that contains both data and methods.

 

Inheritance Polymorphism

 

The ability to present the same interface for different underlying data types. A mechanism to create a new class using properties and behaviors of an existing class.