2

我需要通过现有抽象基类的匿名子类在 JavaScript 中实现一个侦听器,定义如下:

public class Speaker {
  public static abstract class MyListener {
    private String name;
    public MyListener(final String name) { this.name = name; }
    public abstract boolean listen(final String words);
  }
}

在 java 中,实现监听器是通过匿名子类完成的:

MyListener newListener = new MyListener("George") {
  public boolean listen(final String words) throws Exception { Thread.sleep(500); }
}

如果我尝试在 JavaScript 中这样做,我无法同时调用抽象基类的构造函数并实现虚函数。

如果我删除构造函数参数,它会起作用,然后以方法实现作为参数调用 MyListener() 会创建我需要的子类的实例。但我实际上需要使用构造函数参数和方法实现来调用构造函数

4

1 回答 1

2

也许这有帮助:

http://download.oracle.com/javase/6/docs/technotes/guides/scripting/programmer_guide/index.html#jsimplement

它是关于实现接口的,但可能适用。

于 2010-09-21T12:45:01.113 回答