Click here to Skip to main content
15,888,610 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
What is Encapsulation & how it is implement in my project
Posted

Definition - What does Encapsulation mean?

Encapsulation, in the context of C#, refers to an object's ability to hide data and behavior that are not necessary to its user. Encapsulation enables a group of properties, methods and other members to be considered a single unit or object.

The following are the benefits of encapsulation:
•Protection of data from accidental corruption
•Specification of the accessibility of each of the members of a class to the code outside the class
•Flexibility and extensibility of the code and reduction in complexity
•Lower coupling between objects and hence improvement in code maintainability

Encapsulation is used to restrict access to the members of a class so as to prevent the user of a given class from manipulating objects in ways that are not intended by the designer. While encapsulation hides the internal implementation of the functionalities of class without affecting the overall functioning of the system, it allows the class to service a request for functionality and add or modify its internal structure (data or methods) to suit changing requirements.

Encapsulation is also known as information hiding.

but it different from Abstraction
Encapsulation and Abstraction in c# example with difference[^]

Lesson 19 : Encapsulation[^]
What is Encapsulation?[^]
Encapsulation in C#[^]
.
and Google[^] is your best friend.


Hope it helped you.
 
Share this answer
 
public class Employee {
private BigDecimal salary = new BigDecimal(50000.00);

public BigDecimal getSalary() {
return salary;
}

public static void main() {
Employee e = new Employee();
BigDecimal sal = e.getSalary();
}
}
 
Share this answer
 
Comments
CHill60 13-Oct-14 6:38am    
This does not answer the 2 year old question!

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900