我正在七周内通读七种编程语言,其中一个问题是:
如果分母为零,您将如何更改/
返回?0
我首先尝试定义自己的/
并将其实现代理到原始/
方法,如下所示:
Number oldSlash := Number getSlot("/")
Number / = method(x, Number oldSlash(x))
然而,这对我不起作用。在做了一些谷歌搜索后,我发现了一段类似的代码。我发现的代码self
在该方法的实现中使用。所以,我尝试使用self
它似乎工作得很好:
Number oldSlash := Number getSlot("/")
Number / = method(x, self oldSlash(x))
我的问题是:为什么在使用关键字时会起作用self
,为什么在使用关键字时不起作用Number
?