类的初始化顺序1

2016-07-22  本文已影响23人  浑身演技

当实例化父类或特质时,父类构造器的代码在子类的构造器实例化之前,类定义之后执行。

trait A {  
  val audience: String 
  println("Hello " + audience)
}

class BMember(a: String = "World") extends A {  
  val audience = a
  println("I repeat: Hello " + audience)
}

class BConstructor(val audience: String = "World") extends A{
  println("I repeat: Hello " + audience)
}

new BMember("Readers")

new BConstructor("Readers")

输出结果:

Hello null
I repeat: Hello Readers
Hello Readers
I repeat: Hello Readers

此题翻译自Location,Location,Location

上一篇 下一篇

猜你喜欢

热点阅读