3

私は、、を持ってinterface IAinterface IB extends IAますclass 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

この2つを組み合わせた、名前付きの抽象内部クラスを作成し、それを匿名クラスで拡張できると思います。

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

少し不器用ですが、両方を実装できるとは思いません。

于 2010-10-20T14:06:29.220 に答える