谁能解释一下,为什么输出的是BA而不是BB
问题描述:
答
因为a2是A类对象,它的show函数参数分别为D和A,你传递B的对象,那么它只能匹配show(A obj),然后由于多态性,会自动调用B类中重载的show(A obj),从而输出BA。你传递C对象也一样,都会调用show(B obj)函数的。