lua 的元表和元表的__index字段
来源:互联网 发布:钢筋预算软件 编辑:程序博客网 时间:2024/04/28 00:53
众所周知,lua的继承是通过元表的__index字段来实现的,比如child类要继承自parent类,就需要把child的元表设为parent,并且要把child的元表(此时是parent)的__index字段进行设置才行。这里的设置可是是一个table,此table是任意的,不一定是父类,还可以设置为一个function。只有设置了元表的__index字段后,才是真正实现了继承,也就是在child中找不到属性或者方法,lua会从child的元表中去查找。
例子:
--例子1.只设置了元表,但是没有设置元表的__index字段
local parent = {}
parent.helloWorld = "hello World"
local child = {}
setmetatable(child, parent)
print(child.helloWorld)
如果加上了设置元表的__index字段,会实现了继承了:
直接看例子2:
--例子2.设置了元表,并且设置元表的__index字段
local parent = {}
parent.helloWorld = "hello World"
parent.__index = parent --设置__index字段
local child = {}
setmetatable(child, parent)
print(child.helloWorld)
1 0
- lua 的元表和元表的__index字段
- lua 元表 __index 继承的实现
- lua中查找表的过程已经(以及对元表和__index方法的理解)
- Lua元表中__index元方法的作用
- Lua(setmetatable,__index,self,元表)+(cocos2d + lua信息展示框的实现和显示)
- 元表,元方法,__index
- Lua查找表元素过程(元表、__index方法是如何工作的)
- Lua查找表元素过程(元表、__index方法是如何工作的)
- Lua查找表元素过程(元表、__index方法是如何工作的)
- Lua查找表元素过程(元表、__index方法是如何工作的)
- Lua查找表元素过程(元表、__index方法是如何工作的)
- Lua查找表元素过程(元表、__index方法是如何工作的)
- Lua查找表元素过程(元表、__index方法是如何工作的)
- Lua查找表元素过程(元表、__index方法是如何工作的)
- Lua查找表元素过程(元表、__index方法是如何工作的)
- Lua查找表元素过程(元表、__index方法是如何工作的)
- Lua查找表元素过程(元表、__index方法是如何工作的)
- Lua查找表元素过程(元表、__index方法是如何工作的)
- Solr基本概念
- 图之拓扑排序与最短路径的引入
- LaTeX模板——英文写作
- Android性能优化二 电量优化、网络优化、对象池、bitmap解码率
- 最常见的5个导致 RAC 实例崩溃的问题
- lua 的元表和元表的__index字段
- [UWP]附加属性2:实现一个Canvas
- C4.5决策树算法思想
- 设计模式学习笔记之装饰者模式
- Java---This kind of launch is configured to open the debug perspective when it suspends
- 九度-1051-数字阶梯求和
- 数据存储引擎
- 配置Tomcat以指定的身份(非root)运行
- zoj 3620 Escape Time II dfs