Abstract Classes and Methods
Abstract class:
It's only meant to be inherited from
You should not be creating instances from this
class Animal:
def __init__(self, name):
self.animal_name = name
def eat(self):
# raise is used to throw error
raise NotImplementedError("Child class should be implementing this")
class Monkey(Animal):
def eat(self):
print("Monkey eating bananas...")
class Bird(Animal):
def eat(self):
print("Bird eating seeds...")
def fly(self):
print("Bird soaring high...")
my_monkey = Monkey("jojo")
my_monkey() # Will print monkey eating bananas
You get the base functionality from the main function (Animal)
You define the rest of the functionality in other classes like Monkey or Bird
Last updated