链式风格并不是一种语法而是一种设计模式,通过一些编程技巧实现链式风格编程。
链式风格语法:scala中的两种链式风格语法分别为this.type和this。
①.如果想要通过链式风格编程定义一个类,并且这个类是不可继承的,那么可以通过方法返回this。
②.如果类是可扩展的,那么可以通过方法返回this.type。
语法格式:对象.方法1().方法2().方法3().....
链式风格函数的实例如下:
package TestC1
class Student(){
def sayHello():this.type ={
println("sayHello......")
//this就是当前的对象
this
}
def run():this.type ={
println("running......")
this
}
def sleep(): Unit ={
println("sleeping.....")
}
}
object TestFuncChain {
def main(args: Array[String]): Unit = {
var s=new Student()
//链式风格的函数
//
s.sayHello().run().sleep()//sayHello()的返回值还是当前的对象!
}
}