Como expor os argumentos do construtor Scala como membros públicos?

Veja este exemplo:

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
  }
}

Como você pode ver, quero definir um+ operador na classe Point. Mas isso não vai funcionar porque nesse método,x ey não pode ser acessado nosourcePoint variável local por serem particulares, então mudei o exemplo para este:

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

  override def toString = "x: " + x + ", y: " + y
  def +(sourcePoint: Point) : Point = {
    return new Point(x + sourcePoint.x, y + sourcePoint.y)
  }
}

Isso obviamente funcionou, no entanto, existe uma maneira mais fácil de definir essas variáveis em vez de ir de _x -> x e _y ->

Obrigado pela ajuda e pelo tempo! :)

questionAnswers(4)

yourAnswerToTheQuestion