翻译 11.13

This commit is contained in:
dake
2015-11-02 22:25:22 +08:00
parent b0e5a19de5
commit 858170db37
2 changed files with 24 additions and 0 deletions

View File

@@ -1,2 +1,24 @@
# 总结Go 中的面向对象
我们总结一下前面看到的Go 没有类,而是松耦合的类型、方法对接口的实现。
OO 语言最重要的三个方面分别是:封装,继承和多态,在 Go 中它们是怎样表现的呢?
- 封装(数据隐藏):和别的 OO 语言有 4 个或更多的访问层次相比Go 把它简化为了 2 层(参见 4.2 节的可见性规则):
1包范围内的通过标识符首字母小写`对象`只在它所在的包内可见
2可导出的通过标识符首字母大写`对象`在所在包以外可见
类型只拥有自己所在包中定义的方法。
- 继承:用组合实现:内嵌一个(或多个)包含想要行为(字段和方法)的类型;多重继承可以通过内嵌多个类型实现
- 多态用接口实现某个类型的实例可以赋给它实现的任意接口的变量。类型和接口是松耦合的并且多重继承可以通过实现多个接口达到。Go 接口不是 Java 和 C# 接口的变体,而且:接口间是不相关的,并且是大规模编程和可适应演进型设计的关键。
## 链接
- [目录](directory.md)
- 上一节:[接口与动态类型](11.12.md)
- 下一节:[结构体,集合和高阶函数](11.14.md)

2
eBook/11.14.md Normal file
View File

@@ -0,0 +1,2 @@
# 结构体,集合和高阶函数