标签:str from 绿色 rom info nbsp 设计 bsp ini
from abc import ABCMeta, abstractmethod """ 桥接模式:将抽象与实现解耦,使得他们可以毒力的变化 桥接模式关注的是抽象和实现的分离,使得它们可以独立发展; 桥接模式是结构性模式,侧重于软件结构。而策略模式关注的是对算法、规则的封装, 使得算法可以独立于使用它的用户而变化;策略模式是行为模式,侧重于对象行为。 """ class Shape(metaclass=ABCMeta): """形状""" def __init__(self, color): self._color = color @abstractmethod def getShapeType(self): pass def getShapeInfo(self): return self._color.getColor() + "的" + self.getShapeType() class Rectange(Shape): """矩形""" def __init__(self, color): super().__init__(color) def getShapeType(self): return "矩形" class Ellipse(Shape): """椭圆""" def __init__(self, color): super().__init__(color) def getShapeType(self): return "椭圆" class Color(metaclass=ABCMeta): @abstractmethod def getColor(self): pass class Red(Color): """红色""" def getColor(self): return "红色" class Green(Color): """绿色""" def getColor(self): return "绿色" def testShape(): redRect = Rectange(Red()) print(redRect.getShapeInfo()) greenRect = Rectange(Green()) print(greenRect.getShapeInfo()) if __name__ == "__main__": testShape()
标签:str from 绿色 rom info nbsp 设计 bsp ini
原文地址:https://www.cnblogs.com/loveprogramme/p/13149955.html