What is Encapsulation?

Posted by in OOPS category on for Beginner level | Views : 59931 red flag
Rating: 4.67 out of 5  
 3 vote(s)

This article will discuss about the encapsulation in programming.

 Download source code for What is Encapsulation?


This article will discuss about encapsulation in object oriented programming. Watch our 500 videos on Azure, WCF, WPF, LINQ, Design Patterns, WWF, Silverlight, UML @ http://www.questpond.com/

What is Encapsulation?

  • Encapsulation is one of the fundamental principles of object-oriented programming.
  • Encapsulation is a process of hiding all the internal details of an object from the outside world
  • Encapsulation is the ability to hide its data and methods from outside the world and only expose data and methods that are required
  • Encapsulation is a protective barrier that prevents the code and data being randomly accessed by other code or by outside the class
  • Encapsulation gives us maintainability, flexibility and extensibility to our code.
  • Encapsulation makes implementation inaccessible to other parts of the program and protect from whatever actions might be taken outside the function or class.
  • Encapsulation provides a way to protect data from accidental corruption
  • Encapsulation hides information within an object
  • Encapsulation is the technique or process of making the fields in a class private and providing access to the fields using public methods
  • Encapsulation gives you the ability to validate the values before the object user change or obtain the value
  • Encapsulation allows us to create a "black box" and protects an objects internal state from corruption by its clients.

Two ways to create a validation process.

  • Using Accessors and Mutators
  • Using properties

In this example _employeeid and _salary is private fields and providing access to the fields using public methods (SetEmployeeID,GetEmployeeID,SetSalary,GetSalary)

In this example _employeeid and _salary is private fields and providing access to the fields using public methods (EmployeeID,Salary)

Benefits of Encapsulation

  • In Encapsulation fields of a class can be read-only or can be write-only
  • A class can have control over in its fields
  • A class can change data type of its fields anytime but users of this class do not need to change any code

You can find source code at the top of this article.

Page copy protected against web site content infringement by Copyscape

About the Author

Full Name: Gurunatha Dogi
Member Level: Starter
Member Status: Member
Member Since: 8/13/2009 12:50:13 AM
Country: India
Gurunatha Dogi
Gurunatha Dogi, is a software engineer by education and profession. He likes c#, java, php, , asp.net, sql server and seo optimization. During free time he likes to write blogs on various technical topics and tips and tricks on search engine optimization. He likes to play guitar and cricket. Currently he is working in @Questpond one well known of e-learning firm in India.

Login to vote for this post.

Comments or Responses

Posted by: Akiii on: 5/30/2012 | Points: 25
Good explanation !

Thanks and Regards
Posted by: Rajesh081725 on: 11/26/2012 | Points: 25
Good Example

Login to post response

Comment using Facebook(Author doesn't get notification)