编写代码,定义一个形状基类,有 2 个属性:面积和周长,以及两个无返回值的方法:area()和 perimeter(),分别计算形状的面积和周长,从基类派生出三个子类:三角形、矩形、圆,重载基类的两个方法。
这种方法是重写并不是重载
class Shape:
def __init__(self,areas = 0,perimeters = 0):
self.areas = areas
self.perimeters = perimeters
def area():
pass
def perimeter():
pass
class Triangle(Shape):
def __init__(self, a_side = 0, b_side = 0, c_side = 0,areas = 0, perimeters = 0):
super().__init__(areas, perimeters)
self.a_side = a_side
self.b_side = b_side
self.c_side = c_side
def area(self):
s = (self.a_side + self.b_side + self.c_side) / 2
self.areas = (s * (s-self.a_side) * (s-self.b_side) * (s-self.c_side))**0.5
def perimeter(self):
self.perimeters = self.a_side + self.b_side + self.c_side
class Circle(Shape):
def _