在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
面向对象 Lua构造面向对象 1 -- 空类 2 Class = {} 3 4 -- 指向自己 5 Class.__index = Class 6 7 -- 成员变量 8 Class.val = "Class" 9 10 -- 成员函数 11 function Class:print() --相当 Class.print(self) 12 print("Class:print val = "..self.val) 13 end 14 15 function Class:modify() 16 self.val = "modify" 17 end 18 19 -- 构造函数 20 function Class:new(initVal) 21 -- 申请空间 22 local object = {} 23 24 -- 初始数据 25 object.val = initVal 26 27 -- 关联class 28 setmetatable(object,Class) 29 30 -- 返回对象 31 return object 32 end 33 34 -- test 35 local obj = Class:new("object") 36 print("before modify") 37 Class:print() 38 obj:print() 39 print("after modify") 40 obj:modify() 41 Class:print() 42 obj:print() 43 44 -- output 45 -- before modify 46 -- Class:print val = Class 47 -- Class:print val = object 48 -- after modify 49 -- Class:print val = Class 50 -- Class:print val = modify
|
请发表评论