将包含类的值隐式传递到类字段中?

时间:2017-04-11 15:32:39

标签: scala implicits

考虑上一堂课。 如果我们要在学校课程中添加一个Pupil字段,可能会将对象的学校对象传递给Pupil对象。

所以而不是做

class School() {
   val pupil:Pupil = new Pupil(this)
}

我们可以做到这一点

class School() {
   val pupil:Pupil = new Pupil()
}

并且仍然可以从学生对象访问学校参考。我在想scala implicits可能有帮助吗?

1 个答案:

答案 0 :(得分:1)

例如,

object ImplicitConstructorParameter extends App {
  class Pupil(implicit val school: School)

  class School {
    implicit val school: School = this
    val pupil: Pupil = new Pupil
  }

  val school = new School

  println(school.pupil.school.eq(school))
}

打印true