Python | Child Classes
We can create a new class based on an already existing class. The new class, referred to as the child class, will inherit all attributes and methods from the existing class, referred to as the parent class. In addition, we can define additional attributes and methods that are specific to the child class.
To create a child class
Dog based on the parent class
class Animal():# This is constructor for pythondef __init__(self, name, age):self.name = namedef print_attribute(self):print("I have legs!")class Dog(Animal): # Name of the parent class must be included within the brackets# This is constructor for pythondef __init__(self, name, age):super().__init__(name, age) # Notice how we do not need self parameter here# Method specific to the Dog classdef speak(self):print("I am a " + str(self.age) + " year old " + self.name)my_dog = Dog("Roxas", 26)my_dog.print_attribute()I have legs!
super() method allows us to reference a temporary object of the parent class. Therefore, when we initialize an object from class
Dog, we are actually calling the
__init__ constructor from class
The advantage of
super() is that it allows us to avoid explicitly referring to the parent class. Therefore, we can easily change the parent class name if needed without disrupting our program.