当前位置: 首页 > news >正文

为什么做不了自己的网站百度推广怎么做的

为什么做不了自己的网站,百度推广怎么做的,虎门网站建设公司,高端大气传媒公司名字Lua实现面向对象 面向对象核心三要素Lua面向对象大致原理面向对象示例继承与多态示例 面向对象核心三要素 1.封装:对一个事物的抽象为一些属性和行为动作的集合,封装将属性和行为动作(操作数据的方法)绑定在一起,并隐藏…

Lua实现面向对象

  • 面向对象核心三要素
  • Lua面向对象大致原理
    • 面向对象示例
    • 继承与多态示例

面向对象核心三要素

1.封装:对一个事物的抽象为一些属性和行为动作的集合,封装将属性和行为动作(操作数据的方法)绑定在一起,并隐藏对象的内部实现细节,只暴露给外部部分接口。
2. 继承是一种机制,允许一个类(子类)继承另一个类(父类)的属性和方法,从而实现代码重用和扩展。
3. 多态允许一个接口或方法在不同类的实例上有不同的表现形式。通过多态,可以编写更通用、更灵活的代码。

Lua面向对象大致原理

在 Lua 中,面向对象编程(OOP)的概念是通过表(table)和元表(metatable)来实现的。Lua 并没有内建的类系统,但通过灵活的元表机制,可以实现类、继承和多态等 OOP 特性。

面向对象示例

-- 下面通过实现一个简易的链表功能,来展示Lua实现面向对象的大致过程
local Node = {}
Node.__index = Node
Node.new = function(value)return setmetatable({value = value,next = nil},Node)
endlocal LinkList = {}
LinkList.__index = LinkList
LinkList.new = function()return setmetatable({head = nil},LinkList)
end
function LinkList:Insert(value)local node = Node.new(value)if not self.head thenself.head = nodeelselocal curNode = self.headwhile curNode.next docurNode = curNode.nextendcurNode.next = nodeend
endfunction LinkList:InsertByTable(valuetbl)for k,v in ipairs(valuetbl) dolocal node = Node.new(v)if not self.head thenself.head = nodeelselocal curNode = self.headwhile curNode.next docurNode = curNode.nextendcurNode.next = nodeendend
endfunction LinkList:Print()if not self.head thenprint("List has no node")elselocal curNode = self.headwhile curNode doprint("Cur Node Value:",curNode.value)curNode = curNode.nextendend
endfunction LinkList:Reverse()if not self.head thenprint("List has no node")elselocal preNode = nillocal curNode = self.headwhile curNode dolocal nextNode = curNode.nextcurNode.next = preNodepreNode = curNodecurNode = nextNodeendself.head = preNodeend
endlocal l = LinkList.new()
--l:Insert(2)
--l:Insert(4)
--l:Insert(5)
--l:Insert(1)
--l:Insert(0)
l:InsertByTable({1,2,3,4,"a"})
l:Print()
print("---------------------")
l:Reverse()
l:Print()

继承与多态示例

-- 定义一个基类
local Shape = {}
Shape.__index = Shapefunction Shape:new()local instance = setmetatable({}, self)return instance
endfunction Shape:area()return 0
end-- 定义一个子类,继承自 Shape
local Rectangle = setmetatable({}, Shape)
Rectangle.__index = Rectanglefunction Rectangle:new(width, height)local instance = Shape.new(self)instance.width = widthinstance.height = heightreturn instance
endfunction Rectangle:area()return self.width * self.height
end-- 定义另一个子类,继承自 Shape
local Circle = setmetatable({}, Shape)
Circle.__index = Circlefunction Circle:new(radius)local instance = Shape.new(self)instance.radius = radiusreturn instance
endfunction Circle:area()return math.pi * self.radius ^ 2
end-- 创建子类的实例,并展示多态行为
local shapes = {Rectangle:new(3, 4), Circle:new(5)}for _, shape in ipairs(shapes) doprint("Area:", shape:area())  -- 分别输出矩形和圆的面积
end
http://www.ds6.com.cn/news/20823.html

相关文章:

  • 免费网站加速服务外贸营销
  • 优秀排版设计图片seo怎么刷关键词排名
  • 集趣网站怎么做兼职网络广告策划书范文
  • php搭建网站软件茂名seo快速排名外包
  • 官方网站建设合同html网页制作软件
  • 中山市小榄新意网站设计有限公司怎么做好网络推广销售
  • 物流企业网站有哪些网站维护中
  • 黑龙江建设网三类人员优化设计六年级上册数学答案
  • 在哪查看网站被收录的情况搜索引擎营销的特点
  • 网站域名设计福州整站优化
  • 做网站如何选域名好项目推荐平台
  • 私域流量运营关键词排名优化工具有用吗
  • 我的网站域名是什么网络营销方案设计
  • hao123网站难做吗sem运营有出路吗
  • 昆山网站制作 微博电子商务seo是什么意思
  • php网站建设全程实例中国国家培训网
  • 一级a做爰片免费网站国语版的网络营销方式都有哪些
  • 网站建设定价今日最新国内新闻
  • 今天战争最新消息新闻上海建站seo
  • 滕州市 网站建设公司镇江网站
  • 在国外社交网站做产品推广张北网站seo
  • 小规模纳税人企业所得税怎么征收网站怎么优化seo
  • wordpress主题布局教程seo推广有哪些方式
  • 网站url超链接怎么做广告行业怎么找客户
  • 网络公司做的网站被告图片侵权在百度上怎么注册网站
  • 潍坊高端网站开发今天重大新闻头条
  • 临沂网站建设培训推广网站最有效办法
  • 聊城那里有做网站今日头条新闻大事
  • 未备案运行网站网站优化推广外包
  • 网址输入关键词优化排名软件s