Java:匿名类作为现有实现接口的子类?

时间:2010-10-20 14:00:34

标签: java anonymous-class

我有interface IAinterface 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) )

或者不可能像匿名类一样创建类似的东西吗?

1 个答案:

答案 0 :(得分:4)

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

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

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