小编use*_*925的帖子

如何将Scala构造函数参数公开为公共成员?

看看这个例子:

class Point(x: Double, y: Double){
  override def toString = "x: " + x + ", y: " + y
  def +(sourcePoint: Point) : Point = {
    return new Point(x + sourcePoint.x, y + sourcePoint.y
  }
}
Run Code Online (Sandbox Code Playgroud)

如您所见,我想+在Point类上定义一个运算符方法.但是,这不会在方法,因为工作,xy不能在访问sourcePoint局部变量,因为它们是私有的,所以我改变的例子为这样的:

class Point(_x: Double, _y: Double){
  var x = _x
  var y = _y

  override def toString = "x: " + x + ", y: " + y
  def +(sourcePoint: Point) : Point = { …
Run Code Online (Sandbox Code Playgroud)

scala

37
推荐指数
2
解决办法
1万
查看次数

标签 统计

scala ×1