我已经提取了继承和构图之间的以下区别。我想知道延迟创建后端对象的意思是什么?请找到下面的区别。继承和构图的区别
构图允许您延迟创建后端对象,直到(并且除非)需要它们,并且在前端对象的整个生命周期中动态地更改后端对象。有了继承,你得到的超类的形象在你的子类对象的图像,一旦创建了子类,它在整个子类的寿命仍然是子类对象的一部分
我已经提取了继承和构图之间的以下区别。我想知道延迟创建后端对象的意思是什么?请找到下面的区别。继承和构图的区别
构图允许您延迟创建后端对象,直到(并且除非)需要它们,并且在前端对象的整个生命周期中动态地更改后端对象。有了继承,你得到的超类的形象在你的子类对象的图像,一旦创建了子类,它在整个子类的寿命仍然是子类对象的一部分
它的意思是,对象你的类封装不需要被创建,直到有人实际调用使用该对象的方法。
在继承中,超类是在创建子类时创建的。 在构图中,对象在编码器需要时创建。
这是继承,当创建Child类时,会创建父类,因为子类是从父类继承的。
class Parent {
//Some code
}
class Child extends Parent{
//Some code
}
这是组成,在创建子类时,不创建对象,而是被创建时,它是需要。
class Parent{
//Some code
}
class Child{
private Parent parent = new Parent();
//Some code
}
在这种情况下,在创建Child类时也会创建Parent类。下面是在创建子类时
class Parent{
//Some code
}
class Child{
private Parent parent;
public Child()
{
}
public void createParent()
{
parent = new Parent();
}
}
注意如何不创建父,直到呼叫到createParent提出创建成分没有物体的另一个例子。
这也意味着父母的封装没有被破坏。子类将父类的数据公开给子类,从而破坏了封装。组合允许对象封装持久化,并且两个对象可以继续单独管理,以便更改一个类的数据不会影响其他类数据。