lua实现继承
来源:互联网 发布:linux sleep函数没动作 编辑:程序博客网 时间:2024/05/26 22:05
lua本身没有像C++一样的继承功能
但是我们可以自己实现一个类似C++的继承功能
书本也有详细介绍,不过读起来确实费解,所以本人自己写了一个简单的继承,一目了然,用来学习很容易入手
完整代码
-- 基类
People = {}
function People:new(o)
o = o or {}
setmetatable(o, self)
self.__index = self
return o
end
-- 基类方法一
function People.dowork()
print("基类方法一")
end
-- 基类方法二
function People.gohome()
print("基类方法二")
end
-- 子类继承基类
Boy = People:new()
-- 子类方法一
function Boy.study()
print("子类方法一")
end
function Boy.play()
print("子类方法二")
end
-- 开始调用 这里s是子类对象,可以调用子类自有的功能,也可以调用基类的功能。。
-- 子类对象
s = Boy:new()
p = People:new()
print("下面是子类调用")
s.study() -- 子类方法一
s.play() -- 子类方法二
s.dowork()-- 基类方法一
s.gohome()-- 基类方法二
print("下面是基类对象调用")
--p.study() -- 这两个是子类特有的,基类对象不能调用
--p.play()
p.dowork() -- 基类方法一
p.gohome() -- 基类方法二
0 0
- lua实现继承
- lua setmetatable实现继承
- lua实现继承、多态
- lua 多继承实现
- lua实现伪多态继承
- lua实现继承
- lua 类继承和实现
- lua实现类的继承
- lua 实现类,继承,多态
- lua实现类与继承,多继承
- Lua实现类和其继承
- lua 多重继承的实现在
- cocos2dx中lua实现继承详解
- cocos2dx中lua实现继承详解
- lua 多重继承的实现在
- cocos2dx中lua实现继承详解
- lua 元表 __index 继承的实现
- Lua继承原理(如何实现面向对象)
- 正则表达式之最短匹配
- javascript注入
- 稀奇古怪:大一学生打印钞票凑够买电脑
- HDU 1021(水题)
- 八大排序算法及完整c代码—堆排序c、java代码
- lua实现继承
- 使用Beaglebone Black的ADC
- 17-打印9*9
- cocos2d-x Ubuntu安装
- 有关Qt的博客,和技术文献
- Windows设置开机自启动
- 代码复用应该这样做(1)
- 利用XSS盗取cookie
- linux下由于内存不足造成的 virtual memory exhausted: Cannot allocate memory, qt **.o文件 file not found