Inheritance is an OOP mechanism which allows an object to access its parent class features. It carries forward the base class functionality to the child.
Python Language Interview Questions - Inheritance
We do it intentionally to abstract away the similar code in different classes.
The common code rests with the base class, and the child class objects can access it via inheritance. Check out the below example.
class PC: # Base class
processor = "Xeon" # Common attribute
def set_processor(self, new_processor):
processor = new_processor
class Desktop(PC): # Derived class
os = "Mac OS High Sierra" # Personalized attribute
ram = "32 GB"
class Laptop(PC): # Derived class
os = "Windows 10 Pro 64" # Personalized attribute
ram = "16 GB"
desk = Desktop()
print(desk.processor, desk.os, desk.ram)
lap = Laptop()
print(lap.processor, lap.os, lap.ram)
The output:
Xeon Mac OS High Sierra 32 GB
Xeon Windows 10 Pro 64 16 GB