什么是包对象,而不是概念,但它们的用途?
我试图找一个工作的例子,我开始工作的唯一形式如下:
package object investigations {
val PackageObjectVal = "A package object val"
}
package investigations {
object PackageObjectTest {
def main(args: Array[String]) {
println("Referencing a package object val: " + PackageObjectVal)
}
}
}
Run Code Online (Sandbox Code Playgroud)
我到目前为止所做的观察是:
package object _root_ { ... }
Run Code Online (Sandbox Code Playgroud)
是不允许的(这是合理的),
package object x.y { ... }
Run Code Online (Sandbox Code Playgroud)
也是不允许的.
似乎必须在直接父包中声明包对象,如果如上所述,则需要包含大括号的包声明表单.
它们是常用的吗?如果是这样,怎么样?