Java 程序员必备scala基础语法

2021-02-22 16:19:12 浏览数 (1)

代码语言:javascript复制
class SendResponse(request: Request,
                     val responseSend: Send,
                     val responseAsString: Option[String],
                     val onCompleteCallback: Option[Send => Unit]) 
  extends Response(request) {
    ......
    // 指定输入参数onCompleteCallback
    override def onComplete: Option[Send => Unit] = onCompleteCallback
}

Scala中的Unit类似于Java中的void Send => Unit 表示一个方法。该方法接收Send类实例,然后执行一段代码逻辑。

Scala是函数式编程语言,因此可以把一个函数作为一个参数传给另一个函数,也可以把函数作为结果返回。这里的onComplete方法就应用了第二种用法,也就是把函数赋值给另一个函数,并作为结果返回。这样做的好处在于,你可以灵活地变更onCompleteCallback来实现不同的回调逻辑。

0 人点赞