我是Scala的新手.
在其中一个Actor类中,我看到我的同事定义了这样的代码
import akka.actor.Actor
class Processor extends Actor {
def receive: Receive = {
case msg: String => doProcess(msg)
case _ =>
}
}
Run Code Online (Sandbox Code Playgroud)
这个类接收定义在哪里?它不会导入此类.系统将如何找到Receive类
它是分别PartialFunction[Any, Unit]
在akka.actor.Actor
伴随对象和特征中定义的类型别名.
摘自源代码:
object Actor {
// Type alias representing a Receive-expression for Akka Actors.
type Receive = PartialFunction[Any, Unit]
// ...
}
trait Actor {
// to make type Receive known in subclasses without import
type Receive = Actor.Receive
// ...
}
Run Code Online (Sandbox Code Playgroud)