我有一个类A和一个类B,它扩展了A并且是子类。我现在有

A aObject = new A(); and
A bObject = new B();


现在我可以不使用类型转换使用bObject调用类B中不在A中的方法吗?

如果我们不能在没有类型转换的情况下这样做,那么多态性的优点是什么?

谢谢。

最佳答案

你不能。在对象aObjectbObject上,只能调用为A定义的方法,而无需使用强制转换。

如果将bObject定义为B类型,则可以,但是按照您的代码立场,您只能使用A的方法和成员。

07-27 23:09