Skip to content

Commit 230dc24

Browse files
committed
💬 fix comment
Change-Id: I8b06ec961b03fdf6495300af21da553dc0609c69
1 parent 5d9dacf commit 230dc24

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

swift-6-beta.docc/LanguageGuide/Protocols.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# 协议
22

3-
定义所遵循的类型必须实现的方法、属性和其他要求
3+
定义遵循协议的类型必须实现的要求
44

55
**协议(Protocol)** 定义了满足特定任务或功能所需的方法、属性和其他要求的蓝图。类、结构体或枚举可以 **遵循(adopt)** 该协议,并提供协议要求的具体实现。任何满足协议要求的类型都被称为 **符合(conform)** 该协议。
66

7-
除了声明所遵循类型必须实现的要求之外,你还可以对协议进行扩展,通过扩展来实现一部分要求或者实现一些附加功能,这样遵循协议的类型就能够使用这些功能。
7+
除了声明所遵循类型必须实现的要求之外,你还可以通过对协议进行扩展来实现一部分要求或附加功能,这样遵循协议的类型就能够使用这些功能。
88

99
<!--
1010
FIXME: Protocols should also be able to support initializers,
@@ -57,7 +57,7 @@ struct SomeStructure: FirstProtocol, AnotherProtocol {
5757
```
5858
-->
5959

60-
如果一个类拥有父类,应该将父类名放在其他遵循的协议名之前,以逗号分隔:
60+
如果一个类拥有父类,应该将父类名放在任何遵循的协议名之前,以逗号分隔:
6161

6262
```swift
6363
class SomeClass: SomeSuperclass, FirstProtocol, AnotherProtocol {
@@ -80,7 +80,7 @@ class SomeClass: SomeSuperclass, FirstProtocol, AnotherProtocol {
8080
8181
## 属性要求
8282

83-
协议可以要求遵循协议的类型提供特定名称和类型的实例属性或类型属性。协议不指定属性是存储属性还是计算属性,它只指定属性的名称和类型。此外,协议还指定属性是 **可读** 的还是 **可读可写的**
83+
协议可以要求遵循协议的类型提供特定名称和类型的实例属性或类型属性。协议不指定属性是存储属性还是计算属性,它只指定属性的名称和类型。此外,协议还指定属性是可读的还是可读****
8484

8585
如果协议要求属性是可读可写的,那么该属性不能是常量属性或只读的计算属性。如果协议只要求属性是可读的,那么该属性不仅可以是可读的,如果你自己的代码需要的话,还可以是可写的。
8686

@@ -256,7 +256,7 @@ protocol RandomNumberGenerator {
256256

257257
`RandomNumberGenerator` 协议要求遵循协议的类型必须拥有一个名为 `random`,返回值类型为 `Double` 的实例方法。尽管这里并未指明,但是我们假设返回值是从 `0.0` 到(但不包括)`1.0`
258258

259-
`RandomNumberGenerator` 协议并没有对如何生成每个随机数做任何假设 —— 它只要求生成器提供一种标准的方式来生成新的随机数。
259+
`RandomNumberGenerator` 协议并不关心每一个随机数是怎样生成的 —— 它只要求生成器提供一种标准的方式来生成新的随机数。
260260

261261
这里有一个遵循并符合 `RandomNumberGenerator` 协议的类。该类实现了一个叫做 **线性同余生成器(linear congruential generator)** 的伪随机数算法。
262262

0 commit comments

Comments
 (0)