在寻找“自我”的意义

时间:2013-02-01 18:04:07

标签: smalltalk

在smalltalk中存在“工作空间”环境。根据定义,“self”指向当前方法正在其中执行的对象。但是当我在工作区窗口中键入代码片段时,我如何理解“当前方法”?没有当前对象运行任何方法或我错过了什么。任何人可以帮助?

2 个答案:

答案 0 :(得分:8)

您可以调试执行的代码,您将看到最终在对象上执行临时方法。例如,在Pharo中,工作空间DoIts在UndefinedObject(nil)上创建一个方法。所以这里自我将指的是nil。

答案 1 :(得分:4)

尝试此实验:在工作区中输入“self”,选择它,然后从上下文菜单中选择“打印”。这将显示自己绑定的对象。

在大多数Smalltalks中,自我将是零。