Ver código fonte

统一添加页脚链接

leisore 10 anos atrás
pai
commit
5ea4b23e1b
9 arquivos alterados com 18 adições e 1 exclusões
  1. 3 1
      eBook/11.1.md
  2. 2 0
      eBook/11.2.md
  3. 2 0
      eBook/11.3.md
  4. 2 0
      eBook/11.4.md
  5. 2 0
      eBook/11.5.md
  6. 2 0
      eBook/11.6.md
  7. 1 0
      eBook/11.7.md
  8. 2 0
      eBook/11.8.md
  9. 2 0
      eBook/11.9.md

+ 3 - 1
eBook/11.1.md

@@ -248,7 +248,9 @@ a) 
 
 b) 使用一个抽象类型 `Shape`(没有字段) 实现同样的功能,它实现接口 `Shaper`,然后在其他类型里内嵌此类型。扩展 10.6.5 中的例子来说明覆写。
 
+## 链接
+
 - [目录](directory.md)
-- 上一章:[接口(Interfaces)与反射(reflection)](11.0.md)
+- 上一:[接口(Interfaces)与反射(reflection)](11.0.md)
 - 下一节:[接口嵌套接口](11.2.md)
 

+ 2 - 0
eBook/11.2.md

@@ -22,6 +22,8 @@ type File interface {
 }
 ```
 
+## 链接
+
 - [目录](directory.md)
 - 上一节:[接口是什么](11.1.md)
 - 下一节:[如何检测和转换接口变量的类型:类型断言](11.3.md)

+ 2 - 0
eBook/11.3.md

@@ -91,6 +91,8 @@ func (ci *Circle) Area() float32 {
 
 如果忽略 `areaIntf.(*Square)` 中的 `*` 号,会导致编译错误:`impossible type assertion: Square does not implement Shaper (Area method has pointer receiver)`。
 
+## 链接
+
 - [目录](directory.md)
 - 上一节:[接口嵌套接口](11.2.md)
 - 下一节:[类型判断:type-switch](11.4.md)

+ 2 - 0
eBook/11.4.md

@@ -71,6 +71,8 @@ func classifier(items ...interface{}) {
 
 接着 练习 11.1 中的内容,创建第二个类型 `RSimple`,它也实现了接口 `Simpler`,写一个函数 `fi`,它可以区分 `Simple` 和 `RSimple` 类型的变量。
 
+## 链接
+
 - [目录](directory.md)
 - 上一节:[类型断言:如何检测和转换接口变量的类型](11.3.md)
 - 下一节:[测试一个值是否实现了某个接口](11.5.md)

+ 2 - 0
eBook/11.5.md

@@ -24,6 +24,8 @@ if sv, ok := v.(Stringer); ok {
 
 在接下来的章节中,我们会讨论两个重要的例子,试着去深入理解它们,这样你就可以更好的应用上面的原则。
 
+## 链接
+
 - [目录](directory.md)
 - 上一节:[类型判断:type-switch](11.4.md)
 - 下一节:[使用方法集与接口](11.6.md)

+ 2 - 0
eBook/11.6.md

@@ -86,6 +86,8 @@ Go
 - 类型 T 的可调用方法集包含接受者为 T 的所有方法
 - 类型 T 的可调用方法集不包含接受者为 *T 的方法
 
+## 链接
+
 - [目录](directory.md)
 - 上一节:[测试一个值是否实现了某个接口](11.5.md)
 - 下一节:[第一个例子:使用Sorter接口排序](11.7.md)

+ 1 - 0
eBook/11.7.md

@@ -221,6 +221,7 @@ b). 
 
 定义一个结构体 `Person`,它有两个字段:`firstName` 和 `lastName`,为 `[]Person` 定义类型 `Persons` 。让 `Persons` 实现 `Sorter` 接口并进行测试。
 
+## 链接
 
 - [目录](directory.md)
 - 上一节:[使用方法集与接口](11.6.md)

+ 2 - 0
eBook/11.8.md

@@ -22,6 +22,8 @@ type Writer interface {
 
 例如一个 `JPEG` 图形解码器,通过一个 `Reader` 参数,它可以解码来自磁盘、网络连接或以 `gzip` 压缩的 `HTTP` 流中的 `JPEG`图形数据,或者其他任何实现了`Reader` 接口的对象。 
 
+## 链接
+
 - [目录](directory.md)
 - 上一节:[第一个例子:使用Sorter接口排序](11.7.md)
 - 下一节:[空接口](11.9.md)

+ 2 - 0
eBook/11.9.md

@@ -248,6 +248,8 @@ func f3(x myInterface) {
 
 `x` 转换为 `myPrintInterface` 类型是完全动态的:只要 `x` 的底层类型(动态类型)定义了 `print` 方法这个调用就可以正常运行。
 
+## 链接
+
 - [目录](directory.md)
 - 上一节:[第二个例子:读和写](11.8.md)
 - 下一节:[反射包](11.10.md)