鉴于以下课程:
case class Test(id: Long, name: String) {
val details = Map("size" -> 54)
}
如何在不实例化类的情况下提取details
?我知道如何使用Scala反射提取id
和name
,但无法弄清楚如何提取我需要的内容。
答案 0 :(得分:2)
Scala中没有静态成员。相反,当您拥有应该从任意代码静态获得的数据而不实例化封闭类时,我们通常会使用该数据定义object
。
object Test {
val Details = Map("size" -> 54)
}
case class Test(id: Long, name: String) {
val details = Test.Details
}
注意文字Details
的情况 - 与Java不同,Scala中有一个约定,用于在CamelCase中命名常量,以大写字母开头。