消息传递介绍
在面向对象设计中,对象接收消息并回复它们。在 Ruby 中,发送消息是调用方法,该方法的结果是回复。
在 Ruby 中,消息传递是动态的。当消息到达而不是确切知道如何回复它时,Ruby 使用一组预定义的规则来查找可以回复它的方法。我们可以使用这些规则来中断和回复消息,将其发送到另一个对象或在其他操作中进行修改。
每次对象收到消息时,Ruby 都会检查:
- 如果此对象具有单例类,则它可以回复此消息。
- 查找这个对象的类然后是类’祖先链。
- 逐个检查此祖先是否有方法可用并向上移动链。