from GeometricObject import GeometricObject from InvalidRadiusException import InvalidRadiusException import math class Circle(GeometricObject): def __init__(self, radius): super().__init__() self.setRadius(radius) def getRadius(self): return self.__radius def setRadius(self, radius): if radius >= 0: self.__radius = radius else: raise InvalidRadiusException(radius) def getArea(self): return self.__radius * self.__radius * math.pi def getDiameter(self): return 2 * self.__radius def getPerimeter(self): return 2 * self.__radius * math.pi def printCircle(self): print(self.__str__(), "radius:", self.__radius)