自学遇到的问题,解决不出来。

定义抽象类shape,包含抽象方法area面积的计算。再定义扩展2个子类Circle、Rectangle,构造函数传入基本参数,重写area方法(不带参有返回值,返回面积)。
定义类柱体Barrel,构造函数两个参(高和Shape对象),方法volume(不带参无返回值)计算柱体体积并输出柱体各项信息,如图。
对类进行测试。

img


class Shape(object):
    def __init__(self):
        pass

    def area(self):
        pass

class Circle(Shape):
    def __init__(self, rad):
        super(Circle, self).__init__()
        self.rad = rad

    def area(self):
        return np.pi*rad**2