设计
一个名为Graph的类表示图形,这个类包含
(1)一个 getArea() 计算面积的方法
(2)一个 getPerimeter(),计算周长的方法
(3) 定义一个info() 输出矩形长、宽、周长、面积的方法
一个名为 Rectangle 的矩形类来表示矩形。这个类继承Graph包含:
(1) 宽度和高度:width、height
(2) 构造方法:传入width,height
(3) 定义一个 getArea() 计算面积的方法
(4) 定义一个 getPerimeter(),计算周长的方法
(5) 定义一个info() 输出矩形长、宽、周长、面积的方法
一个名为 Circle 的圆形类来表示圆形。这个类继承Graph包含:
(1)半径:radius
(2) 构造方法:传入radius
(3) 定义一个 getArea() 计算面积的方法
(4) 定义一个 getPerimeter(),计算周长的方法
(5) 定义一个info() 输出圆形半径、周长、面积的方法
一个名为countandPrint的函数,参数为inst,功能是
(1)调用inst.info()输出传入对象的信息
测试数据:R1(90,80),C1(120),
python面向对象的继承
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
threenewbee 2023-06-04 01:46关注class Graph: def __init__(self, length, width): self.length = length self.width = width def getArea(self): area = self.length * self.width return area def getPerimeter(self): perimeter = 2 * (self.length + self.width) return perimeter def info(self): area = self.getArea() perimeter = self.getPerimeter() print("Length: ", self.length) print("Width: ", self.width) print("Perimeter: ", perimeter) print("Area: ", area) class Rectangle(Graph): def __init__(self, width, height): super().__init__(width, height) self.width = width self.height = height def getArea(self): area = self.width * self.height return area def getPerimeter(self): perimeter = 2 * (self.width + self.height) return perimeter def info(self): area = self.getArea() perimeter = self.getPerimeter() print("Width: ", self.width) print("Height: ", self.height) print("Perimeter: ", perimeter) print("Area: ", area) class Circle(Graph): def __init__(self, radius): super().__init__(radius, radius) self.radius = radius def getArea(self): area = 3.1416 * self.radius ** 2 return area def getPerimeter(self): perimeter = 2 * 3.1416 * self.radius return perimeter def info(self): area = self.getArea() perimeter = self.getPerimeter() print("Radius: ", self.radius) print("Perimeter: ", perimeter) print("Area: ", area) def countandPrint(inst): inst.info() R1 = Rectangle(90, 80) C1 = Circle(120) countandPrint(R1) countandPrint(C1)本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 2无用