您的位置:首页 > 编程语言 > Lua

Lua闭包方式创建对象表。

2017-04-12 20:15 239 查看
这种方式看上去比复制创建更简洁些,对人来说看上去更整洁,喜欢~~嘿嘿。

-- 思路上差不多,创建表然后添加属性,返回该表。可以把这个表看成一个对象。
local function Music(name)

local self = {}

local function init(name)
self.Name = name
end

self.PrintInfo = function()
print("Music:"..name)
end

init()
return self
end

-- 先让一个空表等级父表,然后再向里面加东西,变身继承,搞定。
local function Pinao(name)

local self = Music(name)

local function init(name)
self.KeyNumber = 88
end
self.GetKeyNumber = function() return self.KeyNumber end
init()
return self
end

--测试
local Guitar = Music("Guitar")
Guitar:PrintInfo()

local Pinao1 = Pinao("Pinao1")
Pinao1:PrintInfo()
print(Pinao1:GetKeyNumber())
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  lua 闭包