From 12af762216e4fdbd4a58c676a82d9d29928ac81d Mon Sep 17 00:00:00 2001 From: leisore Date: Mon, 24 Aug 2015 19:37:44 +0800 Subject: [PATCH] Add ch11.0 ch11.1 --- eBook/10.8.md | 2 +- eBook/11.0.md | 9 +++++++++ eBook/11.1.md | 33 +++++++++++++++++++++++++++++++++ eBook/images/11.1_fig11.1.jpg | Bin 0 -> 6714 bytes 4 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 eBook/11.1.md create mode 100644 eBook/images/11.1_fig11.1.jpg diff --git a/eBook/10.8.md b/eBook/10.8.md index 21a8df0..8f7a5c3 100644 --- a/eBook/10.8.md +++ b/eBook/10.8.md @@ -26,4 +26,4 @@ func(obj *typeObj)需要一个typeObj类型的指针参数obj,特殊操作会 ## 链接 - [目录](directory.md) - 上一节:[10.7 类型的String()方法和格式化描述符](10.7.md) -- 下一节:[11.1 什么是接口](11.1.md) \ No newline at end of file +- 下一节:[11 接口(Interfaces)与反射(reflection)](11.0.md) \ No newline at end of file diff --git a/eBook/11.0.md b/eBook/11.0.md index e69de29..a402fba 100644 --- a/eBook/11.0.md +++ b/eBook/11.0.md @@ -0,0 +1,9 @@ +# 11 ӿڣInterfaces뷴䣨reflection + +½ Go нӿںͷݡ + +## + +- [Ŀ¼](directory.md) +- һ£[պSetFinalizer](10.8.md) +- һڣ[ӿʲô](11.1.md) diff --git a/eBook/11.1.md b/eBook/11.1.md new file mode 100644 index 0000000..8084898 --- /dev/null +++ b/eBook/11.1.md @@ -0,0 +1,33 @@ +# 11.1 ӿʲô + +Go Բһ *ͳ* ԣûͼ̳еĸ + + Go зdz **ӿ** ͨʵֺܶԡӿṩһַʽ **˵** Ϊ˭ܸ㶨£Ϳ + +ӿڶһ鷽Щʵ֣룺ûбʵ֣dzģӿҲܰ + +ͨ¸ʽӿڣ + +```go +type Namer interface { + Method1(param_list) return_type + Method2(param_list) return_type + ... +} +``` + + `Namer` һ **ӿ**. + +Լֻһģӿڵɷ `[e]r` ׺ɣ `Printer``Reader``Writer``Logger``Converter`ȵȡһЩõķʽ׺`er`ʱ`Recoverable`ʱӿ`able`β `I` ͷ `.NET` `Java` + +Go еĽӿڶܼ̣ͨǻ03 + +ԣ Go нӿڿֵһӿ͵ıһ **ӿֵ** `var ai Namer``ai`һ֣multiwordݽṹֵ `nil`һָ룬Ȼȫһ¡ָӿֵָǷǷģDzһҲûУᵼ´ + +![](images/11.1_fig11.1.jpg?raw=true) + +˴ķָͨʱ乹ġ + +- [Ŀ¼](directory.md) +- һ£[11 ӿڣInterfaces뷴䣨reflection](11.0.md) +- һڣ[ӿǶӿ](11.2.md) \ No newline at end of file diff --git a/eBook/images/11.1_fig11.1.jpg b/eBook/images/11.1_fig11.1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c67564d30e7ae374354672c7157181f9fe146b44 GIT binary patch literal 6714 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 literal 0 HcmV?d00001