我这里有创建嵌套类的代码,然后检查是否有值。答案在当前[???]的位置,给我的代码无法更改。
//The answer must have balanced parentesis
class A{
class C{
int foo(){return 42;}
}
}
public class Exercise{
public static void main(String [] arg){
assert ([???].foo()==42);
}
}
问题:如何在C中(位于A中)访问foo()方法?
为了运行class的非静态方法C
,您需要创建的实例C
,但它C
是A的非静态内部类,因此您需要先创建的实例,A
然后才能创建C
。因此,创建A
:
A a = new A();
创建C:
C c = a.new C();
调用方法foo
c.foo()
一站式:
new A().new C().foo()
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句