File tree Expand file tree Collapse file tree 1 file changed +12
-0
lines changed
_zh-cn/overviews/scala3-book Expand file tree Collapse file tree 1 file changed +12
-0
lines changed Original file line number Diff line number Diff line change @@ -17,6 +17,9 @@ permalink: "/zh-cn/scala3/book/:title.html"
17
17
在 Scala 3 中,各种定义都可以在源代码文件的 “顶层” 编写。
18
18
例如,您可以创建一个名为 _ MyCoolApp.scala_ 的文件,并将以下内容放入其中:
19
19
20
+ {% tabs toplevel_1 %}
21
+ {% tab 'Scala 3 only' for=toplevel_1 %}
22
+
20
23
``` scala
21
24
import scala .collection .mutable .ArrayBuffer
22
25
@@ -43,13 +46,19 @@ type Money = BigDecimal
43
46
println(" show me the code" .capitalizeAllWords)
44
47
```
45
48
49
+ {% endtab %}
50
+ {% endtabs %}
51
+
46
52
如代码中展示的,无需将这些定义放在 ` package ` , ` class ` 或其他构造中。
47
53
48
54
## 替换包对象
49
55
50
56
如果你熟悉Scala 2,这种方法可以取代 _ 包对象_ 。
51
57
但是,虽然更易于使用,但它们的工作方式类似:当您将定义放在名为 _ foo_ 的包中时,您可以在 _ foo_ 包内的所有其他包内访问该定义,例如在此示例中的 _ foo.bar_ 包中:
52
58
59
+ {% tabs toplevel_2 %}
60
+ {% tab 'Scala 3 only' for=toplevel_2 %}
61
+
53
62
``` scala
54
63
package foo {
55
64
def double (i : Int ) = i * 2
@@ -63,6 +72,9 @@ package foo {
63
72
}
64
73
```
65
74
75
+ {% endtab %}
76
+ {% endtabs %}
77
+
66
78
本示例中使用大括号来强调包嵌套。
67
79
68
80
这种方法的好处是,您可以将定义放在名为 _ com.acme.myapp_ 的包下,然后可以在 _ com.acme.myapp.model_ 、_ com.acme.myapp.controller_ 等中引用这些定义。
You can’t perform that action at this time.
0 commit comments