sun*_*dev 6 java polymorphism inner-classes
尝试在Parent类中创建1个接口和2个具体类.这将使封闭类成为内部类.
public class Test2 {
interface A{
public void call();
}
class B implements A{
public void call(){
System.out.println("inside class B");
}
}
class C extends B implements A{
public void call(){
super.call();
}
}
public static void main(String[] args) {
A a = new C();
a.call();
}
}
Run Code Online (Sandbox Code Playgroud)
现在我不确定如何在静态main()方法中创建类C的对象并调用类C的call()方法.现在我遇到了问题: A a = new C();
Qia*_*Jin 10
这里的内部类不是静态的,所以你需要创建一个外部类的实例,然后调用new,
A a = new Test2().new C();
Run Code Online (Sandbox Code Playgroud)
但在这种情况下,你可以使内部类静态,
static class C extends B implements A
Run Code Online (Sandbox Code Playgroud)
那么可以使用,
A a = new C()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14737 次 |
| 最近记录: |