class inheritance dr. leon jololian. dr.jololian2 class person { private: string name; int age;...

14
Class Inheritance Dr. Leon Jololian

Upload: camron-cox

Post on 05-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Class Inheritance

Dr. Leon Jololian

Page 2: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 2

class Person {private:

string name;int age;

public:Person(string na, int ag);Person(string na);string getName();int getAge();void setName(string na);void setAge(int ag);void print();

};

Page 3: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 3

Person::Person(string na, int ag) {

name = na;age = ag;

}

Person::Person(string na){

name = na;}

Constructors

Page 4: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 4

“Get”-ter Functions

string Person::getName(){

return name;}

int Person::getAge(){

return age;}

Page 5: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 5

“Set”-ter Functionsvoid Person::setName(string na) {

name = na;}

void Person::setAge(int ag) {age = ag;

}

void Person::print() {cout << "Name: " << name << endl;cout << "Age: " << age << endl;

}

Page 6: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 6

Main Function

void main() {Person p("John Doe", 18);p.print();

Person q("Jane Smith");q.setAge(21);q.print();q.setName("Jane Johnson");q.print();

}

Page 7: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 7

Output

Name: John DoeAge: 18Name: Jane SmithAge: 21Name: Jane JohnsonAge: 21

Page 8: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 8

class Student : public Person {private:

string major;float gpa;

public:Student(string na, int ag, string ma, float gp);string getMajor() { return major; }float getGpa() { return gpa; }void setMajor(string ma) { major = ma; }void setGpa(float gp) { gpa = gp; }void print();

};

Page 9: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 9

Student::Student(string na, int ag, string ma, float gp): Person(na, ag){

major = ma;gpa = gp;

}

void Student::print() {Person::print();cout << "Major: " << major << endl;cout << "GPA: " << gpa << endl;

}

Page 10: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 10

Student s("Max Gomez", 19, "Business", float(3.8));s.print();s.setAge(20);s.setGpa(3.75);s.print();

Name: Max GomezAge: 19Major: BusinessGPA: 3.8Name: Max GomezAge: 20Major: BusinessGPA: 3.75

Page 11: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 11

class Employee : public Person {private:

string company;float salary;

public:Employee(string na, int ag, string co, float sa);string getCompany(){ return company; }float getSalary() { return salary; }void setCompany(string co) { company = co; }void setSalary(float sa) {salary = sa; }void print();

};

Page 12: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 12

Employee::Employee(string na, int ag, string co,float sa) :Person(na, ag)

{company = co;salary = sa;

}

void Employee::print(){Person::print();cout << "Company: " << company << endl;cout << "Salary: " << salary << endl;

}

Page 13: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 13

Name: Joe BrownAge: 34Company: IBMSalary: 54320.9Name: Joe BrownAge: 38Company: IBMSalary: 64300.5

Employee e("Joe Brown", 34, "IBM", float(54320.95));e.print();e.setAge(38);e.setSalary(float(64300.52));e.print();

Page 14: Class Inheritance Dr. Leon Jololian. Dr.Jololian2 class Person { private: string name; int age; public: Person(string na, int ag); Person(string na);

Dr.Jololian 14