• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Lua多重继承代码实例
    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中table里内嵌table的例子
    下一篇:Lua中的metatable介绍
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Lua多重继承代码实例 Lua,多重,继承,代码,实例,