Encapsulation and Abstraction

📘 C++ 👁 32 views 📅 Dec 22, 2025
⏱ Estimated reading time: 1 min

Encapsulation is the process of binding data and functions together into a single unit (class) and protecting data from direct access.


How Encapsulation is Achieved

  • Using classes

  • Using access specifiers (private, public, protected)


Example of Encapsulation

class Account { private: int balance; public: void setBalance(int b) { balance = b; } int getBalance() { return balance; } };
  • Data (balance) is hidden

  • Access is provided through public methods


Advantages of Encapsulation

  • Improves data security

  • Enhances maintainability

  • Controls data access

  • Increases modularity


Abstraction in C++

Abstraction means hiding implementation details and showing only essential features to the user.


How Abstraction is Achieved

  • Using abstract classes

  • Using interfaces (pure virtual functions)


Example of Abstraction

class Shape { public: virtual void draw() = 0; // Pure virtual function };
class Circle : public Shape { public: void draw() { cout << "Drawing Circle"; } };
  • User knows what an object does

  • Not how it is implemented


Difference Between Encapsulation and Abstraction

EncapsulationAbstraction
Bundles data and methodsHides implementation details
Focuses on data protectionFocuses on design
Achieved using classesAchieved using abstract classes
Example: Data hidingExample: Interface

Key Points

  • Encapsulation = Data hiding

  • Abstraction = Implementation hiding

  • Both improve security and code clarity

  • Core concepts of OOP in C++


Conclusion

Encapsulation and abstraction work together in C++ to build secure, flexible, and easy-to-maintain programs.


🔒 Some advanced sections are available for Registered Members
Register Now

Share this Post


← Back to Tutorials

Popular Competitive Exam Quizzes