从Scala中的伴随对象访问类参数

时间:2018-03-11 08:45:57

标签: scala companion-object

在Scala中声明一个类时,我们可以传递类参数,然后由编译器使用这些参数来生成主构造函数:

class Rational(n:Int,d:Int){
  override def toString = n + "/"+ d
}
//companion object
object Rational{
   def main(args: Array[String]): Unit = {
   val r = new Rational(1,2)
   println(r.toString)
   println(r.n)
  }
}

在toString方法中,我可以访问n和d作为类成员。 但是当我尝试从伴侣对象访问n时,我得到错误:

  

'无法解析符号n'

编辑:从为可能的答案提供的链接,我可以理解原因。但为什么我可以访问' n'并且' d'在toString方法?

0 个答案:

没有答案