2021
06-05
06-05
Java设计模式之装饰模式详解
一、装饰模式引入例子一个快餐店计算价格问题举例:快餐店有炒面、炒饭这些快餐,可以额外附加鸡蛋、火腿、培根这些配菜,加配菜需要额外加钱,并且每个配菜的价钱不一样,计算快餐价格如何实现?1.1一般设计1.2使用继承方式的一般设计存在的问题横向扩展性不好:如果要再加一种配料(火腿肠),我们就会发现需要给FriedRice和FriedNoodles分别定义一个子类。如果要新增一个快餐品类(炒河粉)的话,就需要定义更多的子,会出现...
继续阅读 >