我总是很难在对象之间发送消息。考虑测验的对象的层次结构:OOP:在层次结构中通知其他对象的麻烦
- 测验
- QuestionList
- 问题
- AnswerList
- 回答
- AnswerList
- 问题
- QuestionList
所以:
测验有QuestionList
一个QuestionList有多个问题
一个问题有一个AnswerList
一个AnswerList有多个答案
当点击答案(我们在这里说的是Flash AS3):
答复通知AnswerList。
AnswerList通知问题。
问题通知QuestionList。
QuestionList通知测验。
换句话说,消息气泡。这是可能的,因为我通过它的'孩子'的构造函数传递每个'父'对象。但我认为我在某个地方看到物体不应该知道它的父母。我应该采取另一种方法吗?
谢谢。