"""
创建图形管理器
四大原则:
开闭原则:增加新图形
单一职责:Rectanlge负责矩形面积的算法,Circle负责图形面积的算法,
GraphicManager负责统一管理图形
依赖倒置:图形管理器没有调用圆形,矩形算法,而是调用图形类
组合复用:图形管理器与各种图形是组合关系
"""
class GraphicManager:
def __init__(self):
self.__graphics = []
def add_graphic(self,graphic):
self.__graphics.append(graphic)
def calculate_total_area(self):
total_area = 0
for item in self.__graphics:
total_area +=item.get_area()
return total_area
class Graphic:
def get_area(self):
pass
class Rectanlge(Graphic):
def __init__(self,length,width):
self.length = length
self.width = width
def get_area(self):
return self.length*self.width
manager = GraphicManager()
manager.add_graphic(Rectanlge(1,3))
print(manager.calculate_total_area())
面向对象设计思想四大原则
最新推荐文章于 2023-08-04 07:33:08 发布
本文介绍了如何运用开闭原则、单一职责原则和依赖倒置原则创建一个图形管理器,通过实例展示了如何让Rectange和Circle类各自负责自己的面积计算,同时GraphicManager集中管理并调用这些组件,实现了组合复用。
2149

被折叠的 条评论
为什么被折叠?



