golang利用组合实现继承
来源:互联网 发布:宏大叙事 知乎 编辑:程序博客网 时间:2024/06/05 01:12
package main import "fmt"type Base struct { Name string}func (b *Base) SetName(name string) { b.Name = name}func (b *Base) GetName() string { return b.Name}// 组合,实现继承type Child struct { base Base // 这里保存的是Base类型}// 重写GetName方法func (c *Child) GetName() string { c.base.SetName("modify...") return c.base.GetName()}// 实现继承,但需要外部提供一个Base的实例type Child2 struct { base *Base // 这里是指针}func (c *Child2) GetName() string { c.base.SetName("canuser?") return c.base.GetName()}func main() { c := new(Child) c.base.SetName("world") fmt.Println(c.GetName()) c2 := new(Child2) c2.base = new(Base) // 因为Child2里面的Base是指针类型,所以必须提供一个Base的实例 fmt.Println(c2.GetName())}
0 0
- golang利用组合实现继承
- golang 中的 "继承" -----组合
- 继承的拓展(利用组合来实现复用)
- 《JAVA继承与多态》利用继承实现MyStack,MyStack是用组合实现的。扩展ArrayLis
- 继承与实现(组合)问题
- 继承与实现(组合)问题
- 函数伪造,组合实现继承
- 利用递归巧妙实现组合
- 利用prototype实现JavaScript继承
- 实现类重用 继承和组合比较
- 依赖、关联、聚合、组合、继承、实现
- 模板设计模式_组合&继承实现
- Go中的用组合实现继承
- 继承、实现、依赖、关联、聚合、组合
- 继承与组合实现软件复用
- 自定义view继承viewgroup,实现组合按钮。
- 关联、依赖、组合、聚合、接口、实现、继承
- golang 组合算法
- ceph存储 Linux文件空洞与稀疏文件
- android优化注意事项(此处只说建议,不进行解释)
- Oracle 数据库查询表空间sql
- 大数据和统计的区别
- 测试
- golang利用组合实现继承
- 5.6 smtp_proto函数:解析smtp协议
- java 日期处理大全
- SVN使用log,list,cat,diff查看所有及特定文件版本信息
- STL序列式容器 - heap
- 5.6.1 流准备
- 文章标题
- TF-IDF判重算法在小规模和大规模数据集上的应用
- jvm调优之调优策略