"""
创建图形管理器
四大原则:
开闭原则:增加新图形
单一职责: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 发布