3

我有interface IA和。interface IB extends IAclass A implements IA

A现在我想创建一个匿名类,它从IB.

那会是什么样子?我想过这样的事情:

new A() implements IB { /* ... */ }

( Error: Type mismatch: cannot convert from A to IB )

或者:

new IB() extends A { /* ... */ }

( Error: Syntax error on token(s), misplaced construct(s) )

还是不可能创建类似的东西作为匿名类?

4

1 回答 1

4

我想你可以创建一个抽象的命名内部类,将两者结合起来,并用你的匿名类扩展它。

   private static abstract class AB extends A implements IB {};
    ...
   new AB() {};

有点笨拙,但我认为你不能同时实现两者。

于 2010-10-20T14:06:29.220 回答