首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >构造函数方法调用中的Java块

构造函数方法调用中的Java块
EN

Stack Overflow用户
提问于 2013-02-26 22:57:30
回答 2查看 184关注 0票数 4
代码语言:javascript
复制
// 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()“构造函数调用。这种类型的构造函数初始化叫做什么。

代码语言:javascript
复制
{
public UntypedActor create() {
return new MyActor("...");
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-26 23:03:23

让您感到困惑的部分是创建一个匿名类,然后实例化它,并将新创建的实例作为参数传递给方法。您引用的代码块是从UntypedActorFactory派生的匿名类的主体

例如,如果你有一个接口:

代码语言:javascript
复制
interface SomeInterface {
    void someMethod();
}

您可以创建一个实现接口的匿名类,如下所示(类似的语法适用于扩展命名类):

代码语言:javascript
复制
SomeInterface instance = new SomeInterface() {
    public void someMethod() {    //
        // implementation here    //  <- similar to the example, 
    }                             //     this is the body of anonymous class
};                                //
票数 4
EN

Stack Overflow用户

发布于 2013-02-26 23:01:08

这是一个匿名类。

这只是一个继承自带有声明方法的UntypedActorFactory的新类。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15092235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档