What is abstraction? What are the different ways to achieve abstraction?

  • Abstraction is one of the characteristic features of Object Oriented Programming.
  • Abstraction enforces the rule that a component "exposes only which is required for the context".
  • This ensures a proper layer of view, where the client is provided with access to those features or contents of it which are needed for the moment.
  • In C#, abstraction is achieved in two ways: by the use of abstract classes and interfaces.
  • An abstract class is a class which can't be instantiated but is extended by its sub classes which create different versions of the functionality defined in the abstract class.
  • An interface is like a contract - it only contains a template of how the component would look like, and all its sub classes must implement the same design.
  • Abstract classes are used to create base functionality with a scope for further extension, while interfaces are created to use while interacting with other components without having to use concrete types that contain functionality.

Object Oriented Programming Concepts - Abstraction

C# Concepts Posted May 14, 2021

You can now show your support. 😊

We use cookies to provide you with a great user experience, analyze traffic and serve targeted promotions.   Learn More   Accept