相关疑难解决方法(0)

如何在Scala中的主构造函数中定义局部var/val?

在Scala中,类的主构造函数没有显式主体,但是从类主体隐式定义.那么,如何区分字段和本地值(即构造函数方法的本地值)?

例如,请使用以下代码片段,这是"Scala中的编程"中的一些示例代码的修改形式:

class R(n: Int, d: Int) {
   private val g = myfunc
   val x = n / g
   val y = d / g
}
Run Code Online (Sandbox Code Playgroud)

我的理解是,这将生成一个包含三个字段的类:私有"g",以及公共"x"和"y".但是,g值仅用于计算x和y字段,并且除了构造函数范围之外没有任何意义.

所以在这个(公认的人为的)例子中,你如何为这个构造函数定义局部值?

scala scala-primary-constructor

60
推荐指数
4
解决办法
6942
查看次数

标签 统计

scala ×1

scala-primary-constructor ×1