考虑这个假设场景:
我有一个Stomach
类,它有一个contents
属性,类的对象Food
应该分配给它。一种方法是使用一种 setter,例如setContents($food)
.
但是让我们假设我们直接分配食物,如$stomach->contents = $orange
.
还假设每当一个Food
对象被分配给我们时,contents
我们需要将对象的eaten
属性更改为true
。有没有办法在不使用分配给它的对象的方法的情况下做到这一点(在这种情况下,是$stomach
's setter)?
基本上,我的问题是:当一个对象作为属性分配给另一个对象时,我们可以调用一个方法吗?另外,即使有可能,这是糟糕的设计吗?抱歉,如果这是一个愚蠢的问题,所有这些对我来说都很新鲜。