Home » Python programs

Python | Implement Interface using class

Python Interface implementation: Here, we are going to learn how to implement Interface using class?
Submitted by Pankaj Singh, on November 21, 2018

In this program, we are implementing the concept of Interface using class. Here, Class Shape worked as Interface. In Interface all methods must be non-implemented it must be implemented in child class unlike abstract class, where we can have some implemented members.

Program:

import math

#Interface
class Shape:
    def input(self):
        pass
    def process(self):
        pass
    def output(self):
        pass

class Circle(Shape):
    def __init__(self,rad=0.0):
        self.__radius=rad
        self.__area = 0.0
    def input(self):
        self.__radius=float(input("Enter radius:"))
    def process(self):
        self.__area=math.pi*math.pow(self.__radius,2)
    def output(self):
        print("Area :",self.__area)

class Rectangle(Shape):
    def __init__(self,len=0,br=0):
        self.__length=len
        self.__breadth=br
        self.__area = 0
    def input(self):
        self.__length=int(input("Enter Length:"))
        self.__breadth = int(input("Enter Breadth:"))
    def process(self):
        self.__area=self.__length*self.__breadth
    def output(self):
        print("Area :",self.__area)


def main():
    print("Circle Object:")
    c=Circle()
    c.input()
    c.process()
    c.output()

    print("\nRectangle Object:")
    r=Rectangle()
    r.input()
    r.process()
    r.output()
if __name__=="__main__":main()

Output

Circle Object: 
Enter radius:1.2 
Area : 4.523893421169302 
 
Rectangle Object:
Enter Length:2 
Enter Breadth:3
Area : 6





Comments and Discussions

Ad: Are you a blogger? Join our Blogging forum.
Learn PCB Designing: PCB DESIGNING TUTORIAL







Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing » Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates

© https://www.includehelp.com some rights reserved.