Abstraction

Last updated

What is Abstraction?

Abstraction is a concept in object-oriented programming (OOP) that refers to the process of hiding the implementation details of an object and exposing only its essential features. It enables the use of objects without the need to understand the underlying complexity of their internal structure and behavior.

There are two types of abstraction:

  • Data abstraction: refers to hiding the internal representation of data and providing a simplified view of the data through a set of well-defined interfaces.
  • Behavioral abstraction: refers to hiding the internal behavior of an object and providing a simplified view of its capabilities through a set of well-defined interfaces.

Free resources to learn Abstraction

More in stage 4: Design Principles

Abstraction: common questions

Can I learn Abstraction in Hindi?

This lesson is written in English. Once you sign in, open it in the interactive course and ask the AI tutor to explain Abstraction in Hindi or Hinglish. The tutor answers from this lesson’s own text, so it stays on the syllabus, and it runs on your own Google, OpenAI or Anthropic key.

Is this Abstraction tutorial for beginners?

It is lesson 32 of 94 in the free Software Design and Architecture roadmap, in stage 4, Design Principles. If you are new to Software Design and Architecture, start from stage 1 and come back here in order; if you already know the earlier stages, this lesson stands on its own.

Still confused? Ask me