概述
local function search(k, plist) for i, v in pairs(plist) do local temp_v = v[k] if temp_v then return temp_v end end end function createClass(...) local c = {} local parents = {...} --父类列表中搜索方法 setmetatable(c, { __index = function(t, k) return search(k, parents) end } ) c.__index = c --定义一个新的构造函数 function c:new(o) o = o or {} setmetatable(o, c) return o end return c end Named = {} function Named:getname() return self.name end function Named:setname(n) self.name = n end local NamedAccount = createClass(Account, Named) account = NamedAccount:new({name = "Paul"}) print(account:getname())
最后
以上就是优雅大象为你收集整理的Lua多重继承代码实例的全部内容,希望文章能够帮你解决Lua多重继承代码实例所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复