设计模式
设计模式案例:简单工厂模式、策略模式、依赖注入模式
装饰器模式
建造者模式
工厂方法模式和建造者模式 区别
工厂模式
策略模式
设计模式简述
适配器模式
开闭原则
设计模式:开篇
django 涉及了哪些设计模式
本文档使用 MrDoc 发布
-
+
首页
装饰器模式
**装饰器模式** 是一种结构性设计模式,它允许在不改变对象自身的情况下,动态地添加额外的功能。该模式通过创建一个装饰类来包装原始类,从而为其添加新的行为或属性。 ```go package main type IPizza interface { getPrice() int } type Pizza struct { } func (p *Pizza) getPrice() int { return 15 } // 添加番茄 type TomatoTopping struct { pizza IPizza } func (c *TomatoTopping) getPrice() int { pizzaPrice := c.pizza.getPrice() return pizzaPrice + 7 } // 添加芝士 type CheeseTopping struct { pizza IPizza } func (c *CheeseTopping) getPrice() int { pizzaPrice := c.pizza.getPrice() return pizzaPrice + 10 } func main() { pizza := &Pizza{} // 添加芝士 pizzaWithCheese := &CheeseTopping{ pizza: pizza, } // 添加番茄 pizzaWithCheeseAndTomato := &TomatoTopping{ pizza: pizzaWithCheese, } fmt.Printf("Price of veggeMania with tomato and cheese topping is %d\n", pizzaWithCheeseAndTomato.getPrice()) } ```
gaojian
2024年12月8日 18:12
分享文档
收藏文档
上一篇
下一篇
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
关于 MrDoc
觅思文档MrDoc
是
州的先生
开发并开源的在线文档系统,其适合作为个人和小型团队的云笔记、文档和知识库管理工具。
如果觅思文档给你或你的团队带来了帮助,欢迎对作者进行一些打赏捐助,这将有力支持作者持续投入精力更新和维护觅思文档,感谢你的捐助!
>>>捐助鸣谢列表
微信
支付宝
QQ
PayPal
Markdown文件
分享
链接
类型
密码
更新密码