apply方法类似于类的初始化方法,在遇到Object(参数1,参数2,......,参数n)时就会自动调用apply()方法。
object Test {
def main(args: Array[String]): Unit = {
val a = ApplyTest()
a.haveTry()
}
}
class ApplyTest{
def apply() = {
println("I am into Scala so much!")
}
def haveTry() = {
println("Hava a try on apply!")
}
}
object ApplyTest{
def apply() = {
println("I am also into Scala so much!")
new ApplyTest
}
}
注意:
直接调用伴生对象ApplyTest(),无须使用new新建对象,调用ApplyTest()就会触发调用、执行apply()方法