golang 中的 "继承" -----组合
来源:互联网 发布:linux修改权限的命令 编辑:程序博客网 时间:2024/06/07 07:30
golang 中一切 皆是类型
这个和 面向对象的 概念有点像 ,但是又不太像,和javascript倒是有些相似之处
那么如何实现 像 Java中的 继承呢,golang使用的是组合
请看代码 和 运行输出 说明一切
type father struct {name string
sex int
}
type sun struct {
father
name string
}
func main() {
s:=sun{father:father{name:"father",sex:11},name:"sun"}
fmt.Println(s)
fmt.Println("name",s.name)
fmt.Println("name",s.father.name)
fmt.Println("sex",s.sex)
fmt.Println("sex",s.father.sex)
}
=======================================
{{father 11} sun}
name sun
name father
sex 11
sex 11
===================================
father的sex属性就被组合进了sun ,成为了sun的属性,虽然我的 命名是 father和 sun但 二者不是继承 是组合的关系
当father的属性 和 sun的属性同名,被组合者 即母体 sun优先,想要 访问 father的name需要 s.father.name
- golang 中的 "继承" -----组合
- golang利用组合实现继承
- Java中的继承与组合
- java中的继承与组合
- Java中的继承与组合
- Java中的继承和组合
- Java中的继承与组合
- Java中的继承与组合
- Java中的继承与组合
- java中的组合和继承
- Java中的继承和组合
- 谈谈Java中的继承与组合
- 面向对象设计中的继承、组合、聚合
- C++中的继承和组合区别使用
- C++中的继承和组合区别使用
- 谈谈Java中的继承与组合
- JAVA中的复用类:继承、组合和代理
- c++中的继承、聚合、关联和组合
- Codeforces---Lucky Conversion
- 安卓应用程序无反应分析
- sql常用语句
- 集训两次周赛总结
- 1+Null 居然等于 Null
- golang 中的 "继承" -----组合
- 停停走走享受生活-今日工作规划-2013.07.20
- 提升tomcat服务器性能的七条经验
- 学习笔记#1
- 作为一个新人,怎样学习嵌入式Linux?被问过太多次,特写这
- 已知年月日,获取是星期几
- HDU2544:最短路
- 基于UDP的 C/S模式 网络应用程序
- Halcon学习(九)两幅图像之间处理