网站开发的关键技术,wordpress做网址导航,深圳网站建设 案例,wordpress登陆页需求 创建图形管理器 -记录多种图形(圆形、矩形.) --提供计算总面积的方法#xff0c; 要求:增加新图形#xff0c;不影响图形管理器 测试: 创建图形管理器#xff0c;存储多个图形对象。 通过图形管理器#xff0c;调用计算总面积方法 思路 代码
# ------…需求 创建图形管理器 -记录多种图形(圆形、矩形.) --提供计算总面积的方法 要求:增加新图形不影响图形管理器 测试: 创建图形管理器存储多个图形对象。 通过图形管理器调用计算总面积方法 思路 代码
# ---------------- 架构 --------------
class GraphController:def __init__(self):self.__list_graphs []def add_graph(self,new_graph):if isinstance(new_graph,Graph):self.__list_graphs.append(new_graph)def get_total_area(self):total_area 0for item in self.__list_graphs:total_area item.calculate_area()return total_areaclass Graph:def calculate_area(self):pass# ---------------- 程序员 --------------
class Circle(Graph):def __init__(self,radius0):self.__radius radiusdef calculate_area(self):return 3.14 * self.__radius ** 2class Rectangle(Graph):def __init__(self,length0,width0):self.length lengthself.width widthdef calculate_area(self):return self.length * self.width# ---------------- 测试 --------------
controller GraphController()
circle Circle(2)
rec Rectangle(2,3)
controller.add_graph(circle)
controller.add_graph(rec)
print(controller.get_total_area())