什么是包对象,与其说是概念,不如说是它们的用法?
我试图找到一个可行的例子,我得到的唯一形式如下:
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)
}
}
}
我到目前为止的观察结果是:
package object _root_ { ... }
不被允许(这是合理的) ,
package object x.y { ... }
也是不允许的。
似乎包对象必须在直接的父包中声明,如果按照上面的方式编写,则需要使用大括号分隔的包声明表单。
它们是否普遍使用? 如果是,如何使用?