File tree Expand file tree Collapse file tree 1 file changed +8
-8
lines changed Expand file tree Collapse file tree 1 file changed +8
-8
lines changed Original file line number Diff line number Diff line change @@ -104,21 +104,21 @@ Hello there Hello there
104
104
105
105
** Strategy** 接口提供了单一的 ` approach() ` 方法来承载函数式功能。通过创建不同的 ** Strategy** 对象,我们可以创建不同的行为。
106
106
107
- 传统上,我们通过创建一个实现 ** Strategy** 接口的类来实现此行为,比如在 ** Soft** 。
107
+ 我们一般通过创建一个实现 ** Strategy** 接口的类来实现这种行为,正如在 ** Soft** 里所做的 。
108
108
109
- - ** [ 1] ** 在 ** Strategize** 中,** Soft** 作为默认策略,在构造函数中赋值。
109
+ - ** [ 1] ** 在 ** Strategize** 中,你可以看到 ** Soft** 作为默认策略,在构造函数中赋值。
110
110
111
- - ** [ 2] ** 一种略显简短且更自发的方法是创建一个 ** 匿名内部类** 。即使这样 ,仍有相当数量的冗余代码。你总是要仔细观察 :“哦,原来这样,这里使用了匿名内部类 。”
111
+ - ** [ 2] ** 一种较为简洁且更加自然的方法是创建一个 ** 匿名内部类** 。即便如此 ,仍有相当数量的冗余代码。你总需要仔细观察后才会发现 :“哦,我明白了,原来这里使用了匿名内部类 。”
112
112
113
- - ** [ 3] ** Java 8 的 Lambda 表达式。由箭头 ` -> ` 分隔开参数和函数体,箭头左边是参数, 箭头右侧是从 Lambda 返回的表达式,即函数体。这实现了与定义类、匿名内部类相同的效果 ,但代码少得多。
113
+ - ** [ 3] ** Java 8 的 Lambda 表达式,其参数和函数体被箭头 ` -> ` 分隔开。 箭头右侧是从 Lambda 返回的表达式。它与单独定义类和采用匿名内部类是等价的 ,但代码少得多。
114
114
115
- - ** [ 4] ** Java 8 的** 方法引用** ,由 ` :: ` 区分。在 ` :: ` 的左边是类或对象的名称,在 ` :: ` 的右边是方法的名称,但没有参数列表 。
115
+ - ** [ 4] ** Java 8 的** 方法引用** ,它以 ` :: ` 为特征。 ` :: ` 的左边是类或对象的名称, ` :: ` 的右边是方法的名称,但是没有参数列表 。
116
116
117
- - ** [ 5] ** 在使用默认的 ** Soft** ** strategy ** 之后 ,我们逐步遍历数组中的所有 ** Strategy** ,并使用 ` changeStrategy() ` 方法将每个 ** Strategy** 放入 变量 ` s ` 中。
117
+ - ** [ 5] ** 在使用默认的 ** Soft** 策略之后 ,我们逐步遍历数组中的所有 ** Strategy** ,并通过调用 ` changeStrategy() ` 方法将每个 ** Strategy** 传入变量 ` s ` 中。
118
118
119
- - ** [ 6] ** 现在,每次调用 ` communicate() ` 都会产生不同的行为,具体取决于此刻正在使用的策略** 代码对象** 。我们传递的是行为,而非仅数据 。[ ^ 3 ]
119
+ - ** [ 6] ** 现在,每次调用 ` communicate() ` 都会产生不同的行为,具体取决于此刻正在使用的策略** 代码对象** 。我们传递的是行为,而并不仅仅是数据 。[ ^ 3 ]
120
120
121
- 在 Java 8 之前,我们能够通过 ** [ 1] ** 和 ** [ 2] ** 的方式传递功能。然而,这种语法的读写非常笨拙,并且我们别无选择。方法引用和 Lambda 表达式的出现让我们可以在需要时** 传递功能** ,而不是仅在必要才这么做 。
121
+ 在 Java 8 之前,我们能够通过 ** [ 1] ** 和 ** [ 2] ** 的方式传递功能。然而,这种语法的读写非常笨拙,并且我们别无选择。方法引用和 Lambda 表达式的出现让我们可以在需要时** 传递功能** ,而不是仅在必要时才这么做 。
122
122
123
123
<!-- Lambda Expressions -->
124
124
You can’t perform that action at this time.
0 commit comments