This assignment requires you to create two files; a module defining 4 classes and an executable program that tests the classes. The module file defines a superclass Edifice (supplied below) and 3 subclasses that you must code. Follow instructions closely for full points.
class Edifice:
def __init__(self,storeys,area):
self.__storeys = storeys
self.__area = area
def show_info(self):
print(‘Storeys:’,self.__storeys,’, floor area:’,self.__area)
class Home:
- inherits from Edifice and adds a numeric attribute for number of bedrooms.
- overrides the show_info() method by:
- calling the Edifice class show_info() method to display the storeys and area attributes.
- printing the purpose of a home and the number of bedrooms.
class Factory:
- inherits from Edifice and adds a string attribute for the product manufactured by the factory.
- overrides the show_info() method by:
- calling the Edifice class show_info() method to display the storeys and area attributes.
- printing the purpose of a factory and the product it manufactures.
class Commercial:
- inherits from Edifice and adds a string attribute for the usage of the commercial building.
- overrides the show_info() method by:
- calling the Edifice class show_info() method to display the storeys and area attributes.
- printing the purpose of the commercial building and the usage.
In the executable file’s main function:
- create a Home instance and execute its show_info() method.
- create a Factory instance that manufactures automobiles and execute its show_info() method.
- create a Commercial instance to represent an office building and execute its show_info() method.
- create another Commercial instance to represent a mall and execute its show_info() method.
SAMPLE OUTPUT
Home
Storeys: 2 , floor area: 3000
For human habitation: 3 bedrooms
Factory
Storeys: 1 , floor area: 300000
For manufacturing automobiles
Commercial
Storeys: 12 , floor area: 48000
Commercial building offices
Commercial
Storeys: 2 , floor area: 100000
Commercial building retailing


0 comments