--初始化test函数
test=function()
-- body
print("dfadkjasdfkjkf")
end
}
Class.__index = Class
function Class:new(x,y)
local temp = {}
setmetatable(temp, Class)
temp.x = x
temp.y = y
return temp
end
object = Class:new(10,20)
--重新定义了test函数
function Class.test(self)
print(self.x,self.y)
end
Class.test(object) -- 10,20
--重新定义用冒号调用的test函数 该操作做完后,会发现其实调用Class.test()会输出222222222222
function Class:test()
-- body
print("22222222222222")
end
function test( )
-- body
print(self)
end
object = Class:new(10,20)
Class.test(object) -- 22222222222222 证明 其实用冒号调用的函数,其实是语法糖,只是用来有区分函数和参数而使用的 即:Class.test(self...) 相当于 Class:test(...)
-- Class.test()
test() -- nil