TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
Inheritance in c++
1.
2. • IN C++, INHERITANCE IS A PROCESS IN WHICH ONE OBJECT ACQUIRES ALL THE PROPERTIES AND BEHAVIORS OF ITS
PARENT OBJECT AUTOMATICALLY. IN SUCH WAY, YOU CAN REUSE, EXTEND OR MODIFY THE ATTRIBUTES AND
BEHAVIORS WHICH ARE DEFINED IN OTHER CLASS.
• IN C++, THE CLASS WHICH INHERITS THE MEMBERS OF ANOTHER CLASS IS CALLED DERIVED CLASS AND THE CLASS
WHOSE MEMBERS ARE INHERITED IS CALLED BASE CLASS. THE DERIVED CLASS IS THE SPECIALIZED CLASS FOR THE
BASE CLASS.
• THE PROCESS OF OBTAINING THE DATA MEMBERS AND METHODS FROM ONE CLASS TO ANOTHER CLASS IS KNOWN
AS INHERITANCE. IT IS ONE OF THE FUNDAMENTAL FEATURES OF OBJECT-ORIENTED PROGRAMMING.
3. SYNTAX
class derived_class : visibility_mode base_class
{
//members of the derived class
};
The existing class from which the derived class gets inherited is known as the base
class. It acts as a parent for its child class and all its properties i.e. public and
protected members get inherited to its derived class.
4. EXAMPLES:
#include <iostream>
class Teacher {
public:
Teacher()
{
std::cout<<"Hey Guys, I am a teacher"<<endl;
}
string collegeName = "Beginnersbook";
};
//This class inherits Teacher class
class MathTeacher: public Teacher
{
public:
MathTeacher()
{
std::cout<<"I am a Math Teacher"<<endl;
}
string mainSub = "Math";
string name = "Negan";
};
int main()
{
MathTeacher obj;
std::cout<<"Name: "<<obj.name<<endl;
std:: cout<<"College Name: "<<obj.collegeName<<endl;
std:: cout<<"Main Subject: "<<obj.mainSub<<endl;
return 0;
}
OUTPUT :
Hey Guys, I am a teacher
I am a Math Teacher
Name: Negan College
Name: Beginnersbook
Main Subject: Math
5. BENEFITS :
• If we develop any application using this concept than that application have
following advantages.
• Application development time is less.
• Application take less memory.
• Application execution time is less.
• Application performance is enhance (improved).
• Redundancy (repetition) of the code is reduced or minimized so that we
get consistence results and less storage cost.
• Use of Virtual Keyword
6. TYPES :
1. SINGLE INHERITANCE :
When a single class is derived from a single parent class, it is called Single inheritance. It is
the simplest of all inheritance.
In single inheritance, there is only one base class and one derived class. The Derived class gets
inherited from its base class.
Base Class
Derived Class
SYNTAX :
class base_classname
{
properties...
methods...
};
class derived_classname :
visibility_mode base_classname
{
properties...
methods...
};
7. EXAMPLE :
#include <iostream>
class Vehicle {
public:
Vehicle()
{
std::cout << "This is a Vehicle" << endl;
}
};
class Car: public Vehicle{
};
// main function
int main()
{
Car obj;
return 0;
}
OUTPUT :
This is a vehicle
8. 2. MULTIPLE INHERITANCE :
Multiple Inheritance is a feature of C++ where a class can inherit from more than one
classes. i.e one sub class is inherited from more than one base classes..
Derived Class
SYNTAX :
class base_class1
{
properties;
methods;
};
class base_class2
{
properties;
methods;
};
class derived_classname : visibility_mode base_class1, visibility_mode
base_class2
{
properties;
methods;
};
Base Class
1
Base Class 2
9. EXAMPLE :
#include <iostream>
class Vehicle {
public:
Vehicle()
{
std::cout << "This is a Vehicle" << endl;
}
};
class FourWheeler {
public:
FourWheeler()
{
std::cout << "This is a 4 wheeler Vehicle"
<< endl;
}
};
class Car: public Vehicle, public FourWheeler
{
};
int main()
{
constructor of base classes
Car obj;
return 0;
}
OUTPUT :
This is a Vehicle
This is a 4 wheeler Vehicle
10. 3. MULTILEVEL INHERITANCE :
In this type of inheritance, a derived class is created from another derived class.
CLASS B
CLASS A
CLASS C Derived
Class
SYNTAX :
class base_classname
{
properties; methods;
};
class intermediate_classname:visibility_mode base_classname
{
properties;
methods;
};
class child_classname:visibility_mode intermediate_classname
{
properties;
methods;
};
Base Class
1
Base Class
Intermediate
Derived Class
11. EXAMPLE :
#include <iostream>
class Vehicle
{
public:
Vehicle()
{
std::cout << "This is a Vehicle" << endl;
}
};
class fourWheeler: public Vehicle
{
public:
fourWheeler()
{
std::cout<<"Objects with 4 wheels are
vehicles"<<endl;
}
};
fourWheeler
class Car: public fourWheeler{
public:
car()
{
std::cout<<"Car has 4 Wheels"<<endl;
}
};
int main()
{
Car obj;
return 0;
}
:
This is a Vehicle
Objects with 4 wheels are vehicles
Car has 4 Wheels
12. 4. HIERARCHICAL INHERITANCE :
In this type of inheritance, more than one sub class is inherited from a single base class. i.e. more
than one derived class is created from a single base class.
CLASS A
CLASS D
CLASS C
CLASS B
Derived
Class
SYNTAX :
class base_classname {
properties;
methods;
};
class derived_class1:visibility_mode base_classname {
properties; methods;
};
class derived_class2:visibility_mode base_classname {
properties;
methods;
}; ... ... ...
class derived_classN:visibility_mode base_classname {
properties;
methods; };
Base Class
1
Base Class
Base Class Base Class
13. EXAMPLE :
#include <iostream>
class Vehicle
{
public:
Vehicle()
{
std::cout << "This is a Vehicle" << endl;
}
};
class Car: public Vehicle
{
};
class Bus: public Vehicle
{
};
int main()
{
Car obj1;
Bus obj2;
return 0;
}
:
This is a Vehicle
This is a Vehicle
14. 5. HYBRID INHERITANCE :
Hybrid Inheritance is implemented by combining more than one type of inheritance. For example:
Combining Hierarchical inheritance and Multiple Inheritance.
SYNTAX :
class A
{
};
class B: public A
{
};
class C: public A
{
};
class D: public B, public C
{
};
CLASS A
CLASS C
CLASS D
CLASS B
Most Parent
class
Parent class/
Child class
Parent class/
Child class
Child class
15. EXAMPLE :
#include <iostream>
class Vehicle
{
public:
Vehicle()
{
std::cout << "This is a Vehicle" << endl;
}
};
class Fare
{
public:
Fare()
{
std::cout<<"Fare of Vehiclen";
}
};
{
};
class Bus: public Vehicle, public Fare
{
};
int main()
{
Bus obj2;
return 0;
}
:
This is a Vehicle
Fare of Vehicle