据说,当我们自动创建object
sub-class
objects
时,super-classes
的{{1}}即被创建。这是真的吗?如果是,那么如果超类是抽象类怎么办。
答案 0 :(得分:2)
不,那不是真的。对象只有一种类型:您实例化的类。该对象还将包含超类的所有字段,并且可以在对象上调用超类的所有方法(尚未被覆盖),但它仍然只是一个对象。
例如,假设你有:
class A {
int i;
}
class B extends A {
int j;
}
如果您实例化new B()
,则会获得一个对象,该对象具有两个字段i
和j
的存储空间。
答案 1 :(得分:0)
超类的子类“is-A”实例,因此它不会创建不同的对象,您的子类实例 IS 是超类实例。