我来自Java,我无法理解为什么我会看到:和。用于我只会使用的东西。在爪哇。
例如我在Lua看到这个。
Person.doSomething()
然后我看到Person:GetName()
在Java中,我只使用第一个选项来执行一个函数。我只是遗漏了一些基本的东西吗?
答案 0 :(得分:2)
调用obj:Method(...)
与obj.Method(obj, ...)
字面上完全相同,只是它只评估obj
一次。
同样,声明function obj:Method(...)
与声明function obj.Method(self, ...)
相同。
基本上,只要函数需要:
的概念,就会使用self
。