子类对象的创建是否也会创建其超类的对象?

| 这是我的意思的示例:
public class Rectangle
{
    private int length;
    private int breadth;
    .
    .
}

public class Box extends Rectangle
{
    private int height;
    .
    .
}
当你:
Box b = new Box();
它是否创建一个Box以及一个Rectangle对象,该矩形不能直接访问,而只能通过Box对象访问。换句话说,它会在内存中创建两个对象吗?     
已邀请:
  换句话说,它会在内存中创建两个对象吗? 不,它创建一个对象。这个单一的对象代表
Box
(并且由于这是
Rectangle
的子类型,所以同一对象也代表
Rectangle
)。 继承只是确保
Box
对象的接口是
Rectangle
接口的扩展。     

要回复问题请先登录注册