0% found this document useful (0 votes)
19 views

Lecture - 5 Encapsulation

The document discusses encapsulation in object-oriented programming. It explains that encapsulation involves enclosing items within a package and prevents access to implementation details. It then describes different access specifiers like public, private, and protected and provides code examples to demonstrate their usage.

Uploaded by

ahmad Ali
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views

Lecture - 5 Encapsulation

The document discusses encapsulation in object-oriented programming. It explains that encapsulation involves enclosing items within a package and prevents access to implementation details. It then describes different access specifiers like public, private, and protected and provides code examples to demonstrate their usage.

Uploaded by

ahmad Ali
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 15

Lecture 05

Encapsulation
Encapsulation
• Process of enclosing one or more items within a physical or logical package

• In OOP, prevents access to implementation details

• Abstraction allows making relevant information visible

• Encapsulation enables a programmer to implement the desired level of


abstraction

• Implemented by access specifiers

• Define the scope and visibility of a class member


Access Specifiers
C# supports following access specifiers

• Public

• Private

• Protected

• Internal
Public Access Specifier
• Allows a class to expose its member variables and member functions to
other functions and objects.

• Any public member can be accessed from outside the class.


Public - Code Example
using System;

namespace RectangleApplication {
class Rectangle {
class ExecuteRectangle {
//member variables
static void Main(string[] args) {
public double length;
Rectangle r = new Rectangle();
public double width;
r.length = 4.5;
r.width = 3.5;
public double GetArea() {
r.Display();
return length * width;
Console.ReadLine();
}
}
public void Display() {
}
Console.WriteLine("Length: {0}", length);
}
Console.WriteLine("Width: {0}", width);
Console.WriteLine("Area: {0}", GetArea());
}
}//end class Rectangle
Private Access Specifier

• Allows a class to hide its member variables and member functions from
other functions and objects

• Only functions of the same class can access its private members.

• Even an instance of a class cannot access its private members.


Private - Code Example
using System;
namespace RectangleApplication {
class Rectangle {
//member variables
private double length;
private double width;
public void Acceptdetails() { class ExecuteRectangle {
Console.WriteLine("Enter Length: "); static void Main(string[] args) {
length = Convert.ToDouble(Console.ReadLine()); Rectangle r = new Rectangle();
Console.WriteLine("Enter Width: "); r.Acceptdetails();
width = Convert.ToDouble(Console.ReadLine()); r.Display();
} Console.ReadLine();
public double GetArea() { }
return length * width; }
} }
public void Display() {
Console.WriteLine("Length: {0}", length);
Console.WriteLine("Width: {0}", width);
Console.WriteLine("Area: {0}", GetArea());
}
}//end class Rectangle
Protected Access Specifier
• Allows a child class to access the member variables and member functions
of its base class
• It helps in implementing inheritance.

• In details, let’s discuss it later


• Internal Access Specifier,later
Methods
• A method is a group of statements that together perform a task.
• Every C# program has at least one class with a method named Main.

• To use a method, we need to −


• Define the method
• Call the method
Defining Methods in C#
• The syntax for defining a method in C# is as follows −

<Access Specifier> <Return Type> <Method Name>(Parameter List) {


Method Body
}

• Various elements of a method


Method Elements
• Access Specifier
• This determines the visibility of a variable or a method from another class.
• Return type
• A method may return a value. The return type is the data type of the value
the method returns. If the method is not returning any values, then the
return type is void.
• Method name
• Method name is a unique identifier and it is case sensitive. It cannot be
same as any other identifier declared in the class.
• Parameter list
• Parameter used to pass and receive data from a method
• Refers to the type, order, and number of the parameters of a method.
• Parameters are optional; that is, a method may contain no parameters.
Any Difference?
• Parameters

• Arguments
Method Elements
• Method body
• This contains the set of instructions needed to complete the required
activity.

• Parameters
• What's given in the function declaration/definition.

• Arguments
• What's passed when calling the function.
Method Code
static void Main(string[] args) {
using System; /* local variable definition */
int a = 100;
namespace CalculatorApplication {
int b = 200;
class NumberManipulator {
int ret;
NumberManipulator n = new
// parameters NumberManipulator();
public int FindMax(int num1, int
num2) {
//calling the FindMax method
/* local variable declaration */
int result; // arguments
ret = n.FindMax(a, b);
if (num1 > num2)
Console.WriteLine("Max value is :
result = num1;
else
{0}", ret );
result = num2; Console.ReadLine();
return result; }
} }
}
Thanks for Your Time!!!

You might also like