Lua:复制表的方式实现面向对象
2017-06-30 17:09
399 查看
面向对象类的使用
面向对象继承
--克隆函数 function clone(tab == nil) local ins = {}; for key,var in pairs(tab) do ins[key] = var; end return ins; end People = {} ; --有参构造函数 function People.New(name) local self = clone(People); self.name = name; return self; end function People.sayHi() print("People sayHi!"); end local p1 = clone(People); p1.sayHi(); local p2 = People.new("ZhangSan"); p2.sayHi();
面向对象继承
--Man类继承People function Copy(dist,tab) for key,var in pairs(tab) do dist[key] = var end end Man= {}; function Man.new(name,age) local self = People.new(name) self.age =age; copy(self,Man); return self; end Man.SyHello = function() print("Man say hello"); end --重写父类函数 Man.sayHi = function(self) print("Man sayHi"..self.name..self.age); end local m = Man.new("zhangsan",29); m.sayHi();
相关文章推荐
- Lua实现类与继承的两种方式(复制)and (闭包)
- 函数闭包的方式实现lua面向对象
- Lua:函数闭包的方式实现面向对象
- 【Lua学习笔记】 Lua中实现面向对象,转自云风的博客
- javascript面向对象中的对象创建、继承、封装等实现方式
- javascript面向对象的方式实现的弹出层效果代码
- javascript面向对象的方式实现的弹出层效果代码
- lua实现面向对象的特性
- copy_process.c(采用进程间管道通信方式实现复制)
- 编程基础-面向对象-对象的实现方式(模版/原型)
- Lua中的面向对象实现探讨
- C++禁止复制对象实现方式
- lua实现面向对象的特性
- 继承的另一种实现方式- 通过复制属性实现继承
- lua的table实现以及遍历方式
- Tomcat集群Cluster实现原理剖析(session复制实现方式)
- 在 Lua 中实现面向对象
- 面向对象的JavaScript 五 ----- Javascript实现继承的方式(2)
- lua实现面向对象的特性
- C#实现面向对象多态性的三种方式