Lecture 03 Access Methods
Lecture 03 Access Methods
Programming
Eng. (Ms.) H.C. Ganege
From last Session …
• Course introduction
• Software Evaluation
• OOP and POP
• Memory concepts/ Operators/
Control Structures
• IDE (Dec C++/ Visual Studio)
• Exercise 01
• Tutorial 01
• Object and Class
2
Class car
class Car {
int price;
Car float mileage;
Attributes
Price
void start(){}
Mileage
void stop(){}
Methods
Start };
Drive
Constructing Objects from Classes
A class An object
(the concept) (the realization)
5
Specifying a Class
class classname {
private:
variable declarations;
function declarations;
public:
variable declarations;
function declarations;
};
6
A simple class Example
• A typical class declaration would look like:
class Item {
int number;
float cost;
public:
int getdata(int a, float b);
void putdata(void);
};
7
• Write simple program for calculate area of circle and perimeter of circle.
8
int main()
{
Circle c1; //circle object 1
ClassName objectVariablename;
c1.r = 8.2;
c1.perimeter();
c1.area1();
c2.r = 14.9;
c2.perimeter();
c2.area1();
c3.r = 32.5;
c3.perimeter();
c3.area1();
}
9
#include <iostream>
using namespace std;
//Circle class
class Circle {
public:
int r; //radius
int area; //area
int peri; //perimeter
void area1() {
area = 3.14 * r * r;
cout << "Area:" << area << endl;
}
void perimeter() {
peri = 2 * 3.14 * r;
cout << "Perimeter:" << peri << endl;
}
};
10
Create a variable of type Circle, the class variables are called
int main()
as objects, therefore,
{
Circle c1; //circle object 1
c1.r = 8.2;
c1.perimeter();
c1.area1();
c2.r = 14.9;
c2.perimeter();
c2.area1();
11
#include <iostream> #include <iostream>
using namespace std; using namespace std;
12
Accessing class Member
object_name.function-name(actual-argument);
#include <iostream>
using namespace std;
int main()
//Circle class {
class Circle { //Circle c1; //circle object 1
public: c1.perimeter(4);
int area; //area c1.area1(4);
int peri; //perimeter
//Circle c1; //circle object 1
void area1(int r) { c2.perimeter(3);
area = 3.14 * r * r; c2.area1(3);
cout << "Area:" << area << endl;
}
void perimeter(int r) { }
peri = 2 * 3.14 * r;
cout << "Perimeter:" << peri << endl;
}
}c1,c2;
13
Constructing Objects from Classes
A class An object
(the concept) (the realization)
15
Inside the class definition
return-type function-name (argument declaration)
{
function body
#include <iostream>
}
using namespace std;
void perimeter(int r) {
peri = 2 * 3.14 * r; }
cout << "Perimeter:" << peri << endl;
}
}c1,c2;
16
Outside the class definition
#include <iostream> return-type class-name :: function-name (argument declaration)
using namespace std; {
//Circle class
class Circle {
public:
int r; //radius
int area; //area
int peri; //perimeter
void area1() {
area = 3.14 * r * r;
cout << "Area:" << area << endl;
}
void perimeter() {
peri = 2 * 3.14 * r;
cout << "Perimeter:" << peri << endl;
}
};
18
Public, private …
#include <iostream>
using namespace std;
//Circle class
class Circle {
public:
int r; //radius
private:
int area; //area
int peri; //perimeter
void area1() {
area = 3.14 * r * r;
cout << "Area:" << area << endl;
}
void perimeter() {
peri = 2 * 3.14 * r;
cout << "Perimeter:" << peri << endl;
}
};
Public, private …
#include <iostream>
using namespace std;
//Circle class
class Circle {
public:
int r; //radius
private:
int area; //area
int peri; //perimeter
void area1() {
area = 3.14 * r * r;
cout << "Area:" << area << endl;
}
void perimeter() {
peri = 2 * 3.14 * r;
cout << "Perimeter:" << peri << endl;
}
};
Access methods
• Each member (attribute or method) is defined with a scope (part of program
text that the member can be accessed by name)
• Public
• Private
• Protected class Circle {
• Default private:
Private int a;
float p;
public:
void area();
void perimeter();
};
public
• accessible from outside
private
• accessible only from within the class
protected
26