多个子对象的一个​​父对象

时间:2009-12-03 13:02:46

标签: oop

是否可以为多个子对象创建一个父对象,以便所有子对象可以共享相同的父状态?

4 个答案:

答案 0 :(得分:1)

如果您的Child类派生自Parent,则Child isA Parent。如果您创建两个子项,则它们是单独的对象,它们的父“部分”是分开的。这不是你要求的效果。

我认为你想要的场景是可以有几个家庭。有父母(称他为弗雷德,72岁)和父母(称她为6月,45岁)

弗雷德有孩子F1,F2,F3,六月有孩子J1,J2。

弗雷德的所有孩子都是72岁,6月45岁,当我们过了弗雷德的生日时,他的孩子自动衰老到73岁。

因此,我们通过 hasA 关系对此进行建模。

Child { 
     Parent myParent;  // points to Fred or June, or whoever
     int getAge() { return myParent.getAge(); }
}

请注意,我们最终委派到我们的父级,这比使用继承稍微多一点,但可能是您想要做的。

答案 1 :(得分:0)

是的,这是可能的。我有一个ArrayList类,一个ArrayList实际上是一个普通的数组,但我只允许对象在其中。

看一下Microsoft的ArrayList类,我的基于那个。

答案 2 :(得分:0)

Flyweight-Pattern可能会对您有所帮助。或不。如需更具体的答案,请更准确地提出您的问题,最好是对您实际使用案例的描述。

答案 3 :(得分:0)

IMO:对于PHP,它只能作为模拟。 语言本身不允许它。