This commit is contained in:
chai2010
2015-12-21 12:55:18 +08:00
parent 1d7534e3c3
commit 7ec2f7cdc1
152 changed files with 54426 additions and 8958 deletions

View File

@@ -48,7 +48,7 @@
<body>
<div class="book" data-level="6" data-chapter-title="方法" data-filepath="ch6/ch6.md" data-basepath=".." data-revision="Wed Dec 16 2015 10:54:29 GMT+0800 (中国标准时间)">
<div class="book" data-level="6" data-chapter-title="方法" data-filepath="ch6/ch6.md" data-basepath=".." data-revision="Mon Dec 21 2015 12:51:02 GMT+0800 (中国标准时间)">
<div class="book-summary">
@@ -146,7 +146,7 @@
<b>0.5.</b>
</a>
@@ -212,7 +212,7 @@
<b>1.3.</b>
査找重的行
査找重的行
</a>
@@ -227,7 +227,7 @@
<b>1.4.</b>
GIF動
GIF動
</a>
@@ -257,7 +257,7 @@
<b>1.6.</b>
穫取多個URL
穫取多個URL
</a>
@@ -479,7 +479,7 @@
<b>3.3.</b>
</a>
@@ -494,7 +494,7 @@
<b>3.4.</b>
爾型
爾型
</a>
@@ -544,7 +544,7 @@
<b>4.</b>
復閤數據類型
複合數據類型
</a>
@@ -857,7 +857,7 @@
<b>6.2.</b>
基於指對象的方法
基於指對象的方法
</a>
@@ -887,7 +887,7 @@
<b>6.4.</b>
方法值和方法達式
方法值和方法達式
</a>
@@ -953,7 +953,7 @@
<b>7.1.</b>
接口是
接口是
</a>
@@ -1073,7 +1073,7 @@
<b>7.9.</b>
示例: 達式求值
示例: 達式求值
</a>
@@ -1103,7 +1103,7 @@
<b>7.11.</b>
基於類型斷言識錯誤類型
基於類型斷言識錯誤類型
</a>
@@ -1214,7 +1214,7 @@
<b>8.2.</b>
示例: 併的Clock服務
示例: 併的Clock服務
</a>
@@ -1229,7 +1229,7 @@
<b>8.3.</b>
示例: 併的Echo服務
示例: 併的Echo服務
</a>
@@ -1274,7 +1274,7 @@
<b>8.6.</b>
示例: 併的Web爬蟲
示例: 併的Web爬蟲
</a>
@@ -1289,7 +1289,7 @@
<b>8.7.</b>
基於select的多路
基於select的多路
</a>
@@ -1304,7 +1304,7 @@
<b>8.8.</b>
示例: 併的字典遍歷
示例: 併的字典遍歷
</a>
@@ -1319,7 +1319,7 @@
<b>8.9.</b>
的退齣
的退齣
</a>
@@ -1354,7 +1354,7 @@
<b>9.</b>
基於共享變量的併
基於共享變量的併
</a>
@@ -1415,7 +1415,7 @@
<b>9.4.</b>
內存
內存
</a>
@@ -1460,7 +1460,7 @@
<b>9.7.</b>
示例: 併的非阻塞緩存
示例: 併的非阻塞緩存
</a>
@@ -1475,7 +1475,7 @@
<b>9.8.</b>
Goroutines和
Goroutines和
</a>
@@ -1748,7 +1748,7 @@
<b>12.1.</b>
何需要反射?
何需要反射?
</a>
@@ -1793,7 +1793,7 @@
<b>12.4.</b>
示例: 編碼S達式
示例: 編碼S達式
</a>
@@ -1823,7 +1823,7 @@
<b>12.6.</b>
示例: 解碼S達式
示例: 解碼S達式
</a>
@@ -1975,50 +1975,14 @@
</li>
<li class="chapter " data-level="14" data-path="exercise/ex.html">
<a href="../exercise/ex.html">
<i class="fa fa-check"></i>
<b>14.</b>
習題解答
</a>
<ul class="articles">
<li class="chapter " data-level="14.1" data-path="exercise/ex-ch1.html">
<a href="../exercise/ex-ch1.html">
<i class="fa fa-check"></i>
<b>14.1.</b>
第一章 入門
</a>
</li>
</ul>
</li>
<li class="chapter " data-level="15" data-path="errata.html">
<li class="chapter " data-level="14" data-path="errata.html">
<a href="../errata.html">
<i class="fa fa-check"></i>
<b>15.</b>
<b>14.</b>
勘誤
</a>
@@ -2060,15 +2024,15 @@
<section class="normal" id="section-">
<h1 id="&#x7B2C;&#x516D;&#x7AE0;-&#x65B9;&#x6CD5;">&#x7B2C;&#x516D;&#x7AE0; &#x65B9;&#x6CD5;</h1>
<p>&#x5F9E;90&#x5E74;&#x4EE3;&#x65E9;&#x671F;&#x958B;&#x59CB;&#xFF0C;&#x9EAB;&#x66CF;&#x5C0D;&#x8C61;&#x7DE8;&#x7A0B;(OOP)&#x5C31;&#x6210;&#x70BA;&#x4E86;&#x7A31;&#x9738;&#x5DE5;&#x7A0B;&#x754C;&#x548C;&#x654E;&#x80B2;&#x754C;&#x7684;&#x7DE8;&#x7A0B;&#x7BC4;&#x5F0F;&#xFF0C;&#x6240;&#x4EE5;&#x4E4B;&#x5F8C;&#x5E7E;&#x4E4E;&#x6240;&#x6709;&#x5927;&#x898F;&#x6A21;&#x88AB;&#x61C9;&#x7528;&#x7684;&#x8A9E;&#x8A00;&#x90FD;&#x5305;&#x542B;&#x4E86;&#x5C0D;OOP&#x7684;&#x652F;&#x6301;&#xFF0C;go&#x8A9E;&#x8A00;&#x4E5F;&#x4E0D;&#x4F8B;&#x5916;&#x3002;</p>
<p>&#x76E1;&#x7BA1;&#x6C92;&#x6709;&#x88AB;&#x5927;&#x773E;&#x6240;&#x63A5;&#x53D7;&#x7684;&#x660E;&#x78BA;&#x7684;OOP&#x7684;&#x5B9A;&#x7FA9;&#xFF0C;&#x5F9E;&#x6211;&#x5011;&#x7684;&#x7406;&#x89E3;&#x4F86;&#x8B1B;&#xFF0C;&#x4E00;&#x500B;&#x5C0D;&#x8C61;&#x5176;&#x5BE6;&#x4E5F;&#x5C31;&#x662F;&#x4E00;&#x500B;&#x7C21;&#x55AE;&#x7684;&#x503C;&#x6216;&#x8005;&#x4E00;&#x500B;&#x8B8A;&#x91CF;&#xFF0C;&#x5728;&#x9019;&#x500B;&#x5C0D;&#x8C61;&#x4E2D;&#x6703;&#x5305;&#x542B;&#x4E00;&#x4E9B;&#x65B9;&#x6CD5;&#xFF0C;&#x800C;&#x4E00;&#x500B;&#x65B9;&#x6CD5;&#x5247;&#x662F;&#x4E00;&#x500B;&#x4E00;&#x500B;&#x548C;&#x7279;&#x6B8A;&#x985E;&#x578B;&#x95DC;&#x806F;&#x7684;&#x51FD;&#x6578;&#x3002;&#x4E00;&#x500B;&#x9EAB;&#x66CF;&#x5C0D;&#x8C61;&#x7684;&#x7A0B;&#x5E8F;&#x6703;&#x7528;&#x65B9;&#x6CD5;&#x4F86;&#x9336;&#x9054;&#x5176;&#x5C6C;&#x6027;&#x548C;&#x5C0D;&#x61C9;&#x7684;&#x64CD;&#x4F5C;&#xFF0C;&#x9019;&#x6A23;&#x4F7F;&#x7528;&#x9019;&#x500B;&#x5C0D;&#x8C61;&#x7684;&#x7528;&#x6236;&#x5C31;&#x4E0D;&#x9700;&#x8981;&#x76F4;&#x63A5;&#x53BB;&#x64CD;&#x4F5C;&#x5C0D;&#x8C61;&#xFF0C;&#x800C;&#x662F;&#x501F;&#x52A9;&#x65B9;&#x6CD5;&#x4F86;&#x505A;&#x9019;&#x4E9B;&#x4E8B;&#x60C5;&#x3002;</p>
<p>&#x5F9E;90&#x5E74;&#x4EE3;&#x65E9;&#x671F;&#x958B;&#x59CB;&#xFF0C;&#x9762;&#x5411;&#x5C0D;&#x8C61;&#x7DE8;&#x7A0B;(OOP)&#x5C31;&#x6210;&#x7232;&#x4E86;&#x7A31;&#x9738;&#x5DE5;&#x7A0B;&#x754C;&#x548C;&#x654E;&#x80B2;&#x754C;&#x7684;&#x7DE8;&#x7A0B;&#x8303;&#x5F0F;&#xFF0C;&#x6240;&#x4EE5;&#x4E4B;&#x5F8C;&#x5E7E;&#x4E4E;&#x6240;&#x6709;&#x5927;&#x898F;&#x6A21;&#x88AB;&#x61C9;&#x7528;&#x7684;&#x8A9E;&#x8A00;&#x90FD;&#x5305;&#x542B;&#x4E86;&#x5C0D;OOP&#x7684;&#x652F;&#x6301;&#xFF0C;go&#x8A9E;&#x8A00;&#x4E5F;&#x4E0D;&#x4F8B;&#x5916;&#x3002;</p>
<p>&#x76E1;&#x7BA1;&#x6C92;&#x6709;&#x88AB;&#x5927;&#x8846;&#x6240;&#x63A5;&#x53D7;&#x7684;&#x660E;&#x78BA;&#x7684;OOP&#x7684;&#x5B9A;&#x7FA9;&#xFF0C;&#x5F9E;&#x6211;&#x5011;&#x7684;&#x7406;&#x89E3;&#x4F86;&#x8B1B;&#xFF0C;&#x4E00;&#x500B;&#x5C0D;&#x8C61;&#x5176;&#x5BE6;&#x4E5F;&#x5C31;&#x662F;&#x4E00;&#x500B;&#x7C21;&#x55AE;&#x7684;&#x503C;&#x6216;&#x8005;&#x4E00;&#x500B;&#x8B8A;&#x91CF;&#xFF0C;&#x5728;&#x9019;&#x500B;&#x5C0D;&#x8C61;&#x4E2D;&#x6703;&#x5305;&#x542B;&#x4E00;&#x4E9B;&#x65B9;&#x6CD5;&#xFF0C;&#x800C;&#x4E00;&#x500B;&#x65B9;&#x6CD5;&#x5247;&#x662F;&#x4E00;&#x500B;&#x4E00;&#x500B;&#x548C;&#x7279;&#x6B8A;&#x985E;&#x578B;&#x95DC;&#x806F;&#x7684;&#x51FD;&#x6578;&#x3002;&#x4E00;&#x500B;&#x9762;&#x5411;&#x5C0D;&#x8C61;&#x7684;&#x7A0B;&#x5E8F;&#x6703;&#x7528;&#x65B9;&#x6CD5;&#x4F86;&#x8868;&#x9054;&#x5176;&#x5C6C;&#x6027;&#x548C;&#x5C0D;&#x61C9;&#x7684;&#x64CD;&#x4F5C;&#xFF0C;&#x9019;&#x6A23;&#x4F7F;&#x7528;&#x9019;&#x500B;&#x5C0D;&#x8C61;&#x7684;&#x7528;&#x6236;&#x5C31;&#x4E0D;&#x9700;&#x8981;&#x76F4;&#x63A5;&#x53BB;&#x64CD;&#x4F5C;&#x5C0D;&#x8C61;&#xFF0C;&#x800C;&#x662F;&#x501F;&#x52A9;&#x65B9;&#x6CD5;&#x4F86;&#x505A;&#x9019;&#x4E9B;&#x4E8B;&#x60C5;&#x3002;</p>
<p>&#x5728;&#x65E9;&#x4E9B;&#x7684;&#x7AE0;&#x7BC0;&#x4E2D;&#xFF0C;&#x6211;&#x5011;&#x5DF2;&#x7D93;&#x4F7F;&#x7528;&#x4E86;&#x6A19;&#x6E96;&#x5EAB;&#x63D0;&#x4F9B;&#x7684;&#x4E00;&#x4E9B;&#x65B9;&#x6CD5;&#xFF0C;&#x6BD4;&#x5982;time.Duration&#x9019;&#x500B;&#x985E;&#x578B;&#x7684;Seconds&#x65B9;&#x6CD5;&#xFF1A;</p>
<pre><code> const day = 24 * time.Hour
fmt.Println(day.Seconds()) // &quot;86400&quot;
</code></pre><p>&#x4F75;&#x4E14;&#x5728;2.5&#x7BC0;&#x4E2D;&#xFF0C;&#x6211;&#x5011;&#x5B9A;&#x7FA9;&#x4E86;&#x4E00;&#x500B;&#x81EA;&#x5DF1;&#x7684;&#x65B9;&#x6CD5;&#xFF0C;Celsius&#x985E;&#x578B;&#x7684;String&#x65B9;&#x6CD5;:</p>
<pre><code class="lang-go"> <span class="hljs-keyword">func</span> (c Celsius) String() <span class="hljs-typename">string</span> { <span class="hljs-keyword">return</span> fmt.Sprintf(<span class="hljs-string">&quot;%g&#xB0;C&quot;</span>, c) }
</code></pre>
<p>&#x5728;&#x672C;&#x7AE0;&#x4E2D;&#xFF0C;OOP&#x7DE8;&#x7A0B;&#x7684;&#x7B2C;&#x4E00;&#x65B9;&#x9EAB;&#xFF0C;&#x6211;&#x5011;&#x6703;&#x66CF;&#x4F60;&#x5C55;&#x793A;&#x5982;&#x4F55;&#x6709;&#x6548;&#x5730;&#x5B9A;&#x7FA9;&#x548C;&#x4F7F;&#x7528;&#x65B9;&#x6CD5;&#x3002;&#x6211;&#x5011;&#x6703;&#x8986;&#x84CB;&#x5230;OOP&#x7DE8;&#x7A0B;&#x7684;&#x5169;&#x500B;&#x95DC;&#x9375;&#x9EDE;&#xFF0C;&#x5C01;&#x88DD;&#x548C;&#x7D44;&#x95A4;&#x3002;</p>
<p>&#x5728;&#x672C;&#x7AE0;&#x4E2D;&#xFF0C;OOP&#x7DE8;&#x7A0B;&#x7684;&#x7B2C;&#x4E00;&#x65B9;&#x9762;&#xFF0C;&#x6211;&#x5011;&#x6703;&#x5411;&#x4F60;&#x5C55;&#x793A;&#x5982;&#x4F55;&#x6709;&#x6548;&#x5730;&#x5B9A;&#x7FA9;&#x548C;&#x4F7F;&#x7528;&#x65B9;&#x6CD5;&#x3002;&#x6211;&#x5011;&#x6703;&#x8986;&#x84CB;&#x5230;OOP&#x7DE8;&#x7A0B;&#x7684;&#x5169;&#x500B;&#x95DC;&#x9375;&#x9EDE;&#xFF0C;&#x5C01;&#x88DD;&#x548C;&#x7D44;&#x5408;&#x3002;</p>
</section>