Inheritance is the idea that a class which is created off the back of another class can use features from said other class. This subclass can also change them, or build upon them as necessary.
Let's use inheritance to alter the behavior of some dogs. Add these new classes underneath your Dog class:
class Greyhound(Dog): def __init__(self, name): super().__init__(name) def speak(self): print("Zoom! My name is", self.name) def race(self, opponent): print(self.name, "is running faster than", opponent.name)class JackRussell(Dog): def __init__(self, name, color): super().__init__(name) self.color = color def get_color(self): print(self.name, "is", self.color)
In order to inherit from an existing class, we place its name in brackets ...