Object Oriented Programming Lab-02 (Encapsulation GetterSetter)

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 4

Object Oriented Programming

Lab Manual
(Lab-02)

Topic: C++ Encapsulation, Getter/Setter

Lab Instructor: Ahmad Abduhu

Session: Fall 2019

School of Systems and Technology

UMT Lahore Pakistan


C++ Encapsulation

The meaning of Encapsulation, is to make sure that "sensitive" data is hidden from users. To
achieve this, you must declare class variables/attributes as private (cannot be accessed from outside the
class). If you want others to read or modify the value of a private member, you can provide
public getter and setter methods.

Why Encapsulation?

 It is considered good practice to declare your class attributes as private (as often as you
can).
 Encapsulation ensures better control of your data, because you can change one part of the
code without affecting other parts
 Increased security of data.

Access Private Members

To access a private attribute, use public "getter" and "setter" methods:

Sample Task:
#include <iostream>
using namespace std;

class Employee {
  private:
    // Private attribute
    int salary;

  public:
    // Setter
    void setSalary(int s) {
      salary = s;
    }
    // Getter
    int getSalary() {
      return salary;
    }
};

int main() {
  Employee myObj;
  myObj.setSalary(50000);
  cout << myObj.getSalary();
  return 0;
}
Example explained

 The salary attribute is private, which have restricted access.

 The public setSalary() method takes a parameter. And assigns it to the salary attribute (salary


= s).

 The public getSalary() method returns the value of the private salary attribute.

 Inside main(), we create an object of the Employee class. Now we can use


the setSalary() method to set the value of the private attribute to 50000. Then we call
the getSalary() method on the object to return the value.
Lab Tasks

Task 1:
Make a class of Car with parameter speed and getter/setter methods.
For your class write test program, by creating three objects.

Task 2:
Make a class of Bike with parameters strokes and horsepower.
Write test program for it. Set and get the values of parameters using proper getter/setter
methods.

Task 3:
Make a class of School with parameters all int type: rooms, staff, students and function
initialize() and print() write test program for it.

Task 4:
Create a class Point having X and Y Axis with getter and setter functions in C++

You might also like