Difference Between Encapsulation and Abstraction
What is encapsulation?
Encapsulation is the process of hiding irrelevant data from the user. To understand encapsulation, consider an example of mobile phone. Whenever you buy a mobile, you don’t see how circuit board works. You are also not interested to know how digital signal converts into analog signal and vice versa. These are the irrelevant information for the mobile user, that’s why it is encapsulated inside a cabinet.In C# programming, we will do same thing. We will create a cabinet and keep all the irrelevant information in it that will be unavailable for the user.
Encapsulation is wrapping, just hiding properties and methods. Encapsulation is used for hide the code and data in a single unit to protect the data from the outside the world. Class is the best example of encapsulation.
What is abstraction?
Abstraction is just opposite of Encapsulation. Abstraction is mechanism to show only relevant data to the user. Consider the same mobile example again. Whenever you buy a mobile phone, you see their different types of functionalities as camera, mp3 player, calling function, recording function, multimedia etc. It is abstraction, because you are seeing only relevant information instead of their internal engineering.We use abstraction in programming languages to make abstract class. Abstract class represents abstract view of methods and properties of class.
Implementation Difference Between Encapsulation and Abstraction
1. Abstraction
is implemented using interface and abstract class while Encapsulation
is implemented using private and protected access modifier.
2. OOPS
makes use of encapsulation to enforce the integrity of a type (i.e. to
make sure data is used in an appropriate manner) by preventing
programmers from accessing data in a non-intended manner. Through
encapsulation, only a predetermined group of functions can access the
data. The collective term for datatypes and operations (methods) bundled
together with access restrictions (public/private, etc.) is a class.
3. Example of Encapsulation
Class Encapsulation
{
private int marks;
public int Marks
{
get { return marks; }
set { marks = value;}
}
}
4. Example of Abstraction
abstract class Abstraction
{
public abstract void doAbstraction();
}
public class AbstractionImpl: Abstraction
{
public void doAbstraction()
{
//Implement it
}
}
No comments:
Post a Comment