关于java继承与多态的问题
public class A
{
public void func1()
{
System.out.println("A's func1 is calling.");
}
public void func2()
{
func1();
}
}
class B extends A
{
public void func1()
{
System.out.println("B's func1 is calling.");
}
public void func3()
{
System.out.println("B's func3 is calling.");
}
}
class C
{
public static void main(String[] args)
{
B b=new B();
A a=b;
callA(a);
}
public static void callA(A a)
{
a.func1();
a.func2();
}
}
问为什么最后输出的结果是:
B's func1 is calling.
B's func1 is calling.
求解!!