一个错误,大家帮我分析一下

2024-12-03 05:33:25
推荐回答(3个)
回答1:

类型转换错误。
你这个callA(A a)方法要求传递的是一个A类对象,但是你拿一个子类对象传进去,根本就匹配不上。

但如果你传进去的是一个父类对象,然后B b = (B)a;把父类对象强制转换成子类对象,至于为什么这样也会出现错误,我就不清楚了。期待高人答复。

我建议你加点分吧,4级经理难道几十分都出不起吗

回答2:

继承与多态的问题吧

fun1() fun2() fun3()都是先在子类找啊 找到了重写的就用重写的 找不到的就用继承的

回答3:

问题出在这个语句: “callA(new A()); ”;
你调用callA方法时传过去一个A类的对象,然后又把这个对象强制转换成B类型,怎么可以把父类对象强制转换成子类对象呢