比如我创建这样一个对象:继承关系
BankAccount b = new SavingsAccount();
现在让我们说,我想访问的方法addInterest()
是在SavingsAccount
我必须做的类:((SavingsAccount)b).addInterest();
我有这个问题,为什么我必须投b
SavingsAccount? b
的实际对象引用是否已经是SavingsAccount
类的实例? BankAccount
如何影响对象本身?我真的很困惑,究竟是什么类正在实例化,以及如何BankAccount
和SavingsAccount
都能够帮助使对象b
有效。
我很感激任何帮助。谢谢。
阅读声明类型和运行时类型之间的差异以及编译时如何解析方法调用。 –