【发布时间】:2020-09-16 02:41:31
【问题描述】:
所以如果我有一个 A 类,我也有一个 B 类,我创建一个 A 类的对象,例如
A refvariable = new B();
refvariable 可以访问哪些方法? A类的方法还是B类的方法?还是两者都有?
【问题讨论】:
标签: java
所以如果我有一个 A 类,我也有一个 B 类,我创建一个 A 类的对象,例如
A refvariable = new B();
refvariable 可以访问哪些方法? A类的方法还是B类的方法?还是两者都有?
【问题讨论】:
标签: java
代码编译和运行的唯一方法是 B 是 A 的子类。如果是,那么您将只能访问 A 中定义的方法,但您最终可能会运行 B 中定义的代码如果 B 在 A 中定义了具有自己版本的重载方法或变量。
有些细节会让事情变得更复杂一些,比如特定的方法或变量是公共的还是受保护的,以及您是否从同一包中的代码调用该类,但我认为第一段为您提供了基础知识你在问什么。绝对正确的是,您不能在 B 中使用任何在 A 中看不到的定义。
【讨论】: