// allows passing in arguments to the MyActor constructor
ActorRef myActor = system.actorOf(new Props(new UntypedActorFactory()
{ //
public UntypedActor create() { //
return new MyActor("..."); // <- this part confuses me
} //
} //
), "myactor");
我是Java新手,通过Akka文档。我发现上面的代码令人困惑。特别是下面的代码块。如何将代码块发送到“new UntypedActorFactory()”构造函数调用。什么是这种类型的构造函数初始化称为。
{
public UntypedActor create() {
return new MyActor("...");
}
答案 0 :(得分:4)
困惑你的部分会创建一个匿名类,然后实例化它,并将新创建的实例作为参数传递给方法。您引用的代码块是从UntypedActorFactory
例如,如果你有一个界面:
interface SomeInterface {
void someMethod();
}
你可以像这样创建一个实现你的接口的匿名类(类似的语法适合扩展命名类):
SomeInterface instance = new SomeInterface() {
public void someMethod() { //
// implementation here // <- similar to the example,
} // this is the body of anonymous class
}; //
答案 1 :(得分:0)
这是一个匿名类。
这只是一个使用声明的方法从UntypedActorFactory继承的新类。