我如何访问抽象类中的内部类方法都在接口中?

时间:2012-03-05 09:07:07

标签: java

 interface Hello {
   abstract class A {
     void show() {
       B b = new B();
       b.dis();
     }
    }
    class B {
      void dis() {
        System.out.println("HIiiiiiiii");
      }
    }
 }

但是这不起作用请任何人指导我如何访问它,因为这个要求不应该改变..

1 个答案:

答案 0 :(得分:1)

如果我正确地阅读了这个问题,您需要以下内容:

new Hello.B().dis();
new Hello.A(){}.show();

其中new Hello.A(){}实例化抽象类A的{​​{3}}子类。

修改

如果在B中定义了A,那么您需要:

(new Hello.A(){}.new B()).dis();
new Hello.A(){}.show();

dis()调用看起来的方式,因为B将不再是隐式静态内部类,因此它需要A的实例。