直接上例子
class A
{
void f()
{
…
}
}
class B extends A
{
void c1(){
…
}
void c2(){
…
}
}
我们做A a=new B();
再做 a.c1;
会报错:
java先进行静态检查,检查***等号左边的东西***
静态检查时,a还是A,没有c1方法,会出问题
但是如果run time ,a就成了B类型,可以调用c1
不过静态过不了就别想着runtime 了
关于父类子类静态检查的问题
最新推荐文章于 2021-03-12 06:38:28 发布