【发布时间】:2013-01-25 05:34:32
【问题描述】:
所以我在包 A 中有一个名为 Vehicle 的类,在包 B 中有一个名为 Car 的类。 Car 类扩展了 Vehicle,因此它继承了 Vehicle 的某些元素。我的问题是 Car 继承了什么?
我认为它继承了所有公共方法和变量,但是在我的分配中,我有具有包访问权限的变量(不是公共的,不是私有的),所以我必须从 Vehicle in Car 中重新声明所有变量,对吗?此外,不清楚的是我们是否可以使用 equals() 方法比较 Car 和 Vehicle 对象,因为即使它们具有相同的名称,变量也不相同。另外,即使我在构造函数 Car 中使用 super(),我为什么还要重新声明所有变量?变量不是在 Vehicle 中启动的吗?另外,既然我必须从 Vehicle 中重新声明所有变量,那么我从 Vehicle 继承的所有公共方法都完全没用吗?从只有包访问权限变量的类继承有什么意义?
【问题讨论】:
标签: java inheritance package