scala中的两种链式风格语法分别为this.type和this。如果想要通过链式风格编程定义一个类,并且这个类是不可继承的,那么可以通过方法返回this。如果类是可拓展的,那么可以通过方法返回this.type
class Stu13{
//this.type 就是当前这个方法的返回值的类型
def say(): this.type = {
println("say.....")
this//当前对象
}
def run(): this.type = {
println("run.....")
this
}
def sleep(): Unit = {
println("sleep.....")
}
}
object Test13_1 {
def main(args: Array[String]): Unit = {
val s1 = new Stu13()
s1.say().run().sleep()
//链式风格:在方法中返回当前对象
//对象.方法1().方法2().方法3().方法4()
}
}