Lua之模拟类与对象

Lua中本身没有“类与对象”的概念,但是可以使用Lua语言将其模拟出来。

1.table为引用型数据
需要明确的是,值类型变量判断相同的条件是值(内容)相同,而引用型变量判断相同的条件为地址相同。

2.模拟过程

①类的创建
a.类:初始化一个table来模拟
b.字段:将其定义在table的{}中,可以赋予初值。
c.方法:格式同普通函数,但是方法名不同,应为“类名:方法名”
d.构造方法:通过setmetatable方法,设置元表(具体方法看图片)。可以设置相关参数,利用self进行设置。

②对象的创建
通过构造方法创建对象。
a.访问字段:对象名.字段名
b.访问方法:对象名:方法名

这里写图片描述

3.self关键字
Lua中的self与C#中的this作用类似,都表示当前类的对象。应用方法如下:
a.在构造方法中指定__index索引时self代表当前类
b.在类中使用self调用类中成员

4.local关键字
Lua语言中的变量在默认情况下为全局变量,如果某些量是局部变量,要用local修饰。

New version:

应用了self与local关键字

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值