lua简单类的实现
原文地址:http://blog.csdn.net/qqmcy/article/details/37725177
类实现:
MyClass = class("MyClass")
--这句话是重定义元表的索引,必需要有
MyClass.__index = MyClass
function MyClass:test(x,y)
local temp = {}
setmetatable(temp, MyClass) -- 必需要有
self.x=x
self.y=y
return self
end
function MyClass:printf123()
print(self.x,self.y)
end
调用
obj = MyClass:test(17,28)
obj:printf123()
类继承:
这里继续使用上面的代码
TestClass = {c=0}
//和类定义一样。表索引设定为自身
TestClass.__index = TestClass
--设置类型是MyClass
setmetatable(TestClass, MyClass)
function TestClass:test1(a, b,c)
local temp1 = {}
self=MyClass:test(a, b)--将对象设定为父类,这个和C++使用父类的方法同样都是用父类名MyClass调用
setmetatable(self, TestClass)--将对象自身元表设定为TestClass类
self.c = c
return self
end
function TestClass:myPrintf()
print(self.x,self.y,self.c)
end
lua简单类的实现的更多相关文章
- PHP扩展开发-简单类扩展
今天来学习简单类扩展开发 实现目标为如下php的类 <?php class classext(){ private $username; CONST URL="http://www.g ...
- lua学习:lua中“类”的实现
在之前的面试遇到考用lua实现类的题目.现在就补补这块知识点. 我们都知道Lua中的table是一个对象.拥有状态,拥有self,拥有独立于创建者和创建地的生命周期. 一个类就是一个创建对象的模具.L ...
- lua 定义类 就是这么简单
在网上看到这样一段代码,真是误人子弟呀,具体就是: lua类的定义 代码如下: local clsNames = {} local __setmetatable = setmetatable loca ...
- Lua面向对象----类、继承、多继承、单例的实现
(本文转载)学习之用,侵权立删! 原文地址 http://blog.csdn.net/y_23k_bug/article/details/19965877?utm_source=tuicool&a ...
- CentOS6.4 安装OpenResty和Redis 并在Nginx中利用lua简单读取Redis数据
1.下载OpenResty和Redis OpenResty下载地址:wget http://openresty.org/download/ngx_openresty-1.4.3.6.tar.gz Re ...
- [Quick-x lua]CCLabel类数字变化动作
之前写了个C++版本的,现在改成lua的, 两者原理是一样,但是动作的执行方式有些微区别 (因为lua无法继承CCActionInterval类,单纯使用lua的话无法调用action的update方 ...
- Away3d 基础 1 ---对一个简单类的解释
转自:http://www.cnblogs.com/nooon/archive/2009/05/16/1458334.html 原英文地址: http://www.flashmagazine.com/ ...
- PHP扩展开发之简单类开发
接下来我们要用扩展的形式实现以下类(演示环境:linux.php-5.5.34-src) <?php class Person { private $_name; public function ...
- lua简单入门
一.安装windows下的lua环境,luaforwindows 下载最新的5.3版本,下载地址: https://sourceforge.net/projects/luabinaries/files ...
随机推荐
- tableView计算动态行高的总结
研究tableView怎么计算动态行高研究了两天一直还不太会,今天最终做出来了想要的效果. 首先.我在网上搜集了非常多资料,各种大神的总结,然后開始看.研究.试验,基本思路都是一样的. 1.一定要将l ...
- Hadoop之文件系统Shell
概述: 文件系统(FS)Shell包括各种类-Shell的命令.直接和Hadoop分布式文件系统(HDFS)交互,也支持对其它文件系统的支持.比如:本地文件系统FS,HFTP FS,S3 FS,和其它 ...
- UVA 10127- Ones 数学
Given any integer 0 ≤ n ≤ 10000 not divisibleby 2 or 5, some multiple of n is a number whichin decim ...
- caioj1496: [视频]基于连通性状态压缩的动态规划问题:Manhattan Wiring
%%%%orz苏大佬 虽然苏大佬的baff吸不得,苏大佬的梦信不得,但是膜苏大佬是少不得的囧 这题还是比较有收获的 哼居然有我不会做的插头DP 自己yy了下,2表示属于2的插头,3表示3的插头 假如当 ...
- Java-API-POI:POI百科
ylbtech-Java-API:POI百科 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. 1. ...
- easyui 之表单验证
/** * 扩展easyui的validator插件rules,支持更多类型验证 */ $.extend($.fn.validatebox.defaults.rules, { minLength : ...
- roscore不能启动
通过VNC 在VNC窗口上出入 roscore 得到下面错误信息 ----------------------------------------------------------- proces ...
- Eclipse插件Lambok,实现自动生成Java代码
1.下载Lombok.jar http://projectlombok.googlecode.com/files/lombok.jar 2.运行Lombok.jar: java -jar D:\00 ...
- Golden Gate 检查点
检查点是记录读写位置信息,在恢复时候要用到,保证事务的完整性. 两种存储方式: 存放在dirchk下 存放在指定的checkpoint table Replicat: nodbcheckpoint: ...
- Unity5.0 状态机新增的entry/exit
相关官方日志 https://blogs.unity3d.com/cn/2014/06/26/shiny-new-animation-features-in-unity-5-0/