99re热这里只有精品视频,7777色鬼xxxx欧美色妇,国产成人精品一区二三区在线观看,内射爽无广熟女亚洲,精品人妻av一区二区三区

class

2019-04-18 18:39 更新

cf中的class

class 意譯為'類', 是對(duì)'對(duì)象'的一種抽象描述. 多用與各種面相對(duì)象編程語言中.

lua語言沒有原生的class類型, 但是對(duì)class的wrapper提供了基本構(gòu)建的元方法.

cf對(duì)此為方便描述內(nèi)置對(duì)象與內(nèi)置庫封裝, 使用lua table的相關(guān)元方法建立了最基本的class模型.

cf雖然規(guī)定了一套最基本的class創(chuàng)建、使用方法, 但是不會(huì)限制用戶對(duì)class的操作方法與操作習(xí)慣.

cf為內(nèi)簡(jiǎn)化對(duì)基于class封裝的內(nèi)置庫的學(xué)習(xí)成本與代碼可讀性, 去除了class原本擁有的'繼承'概念.

cf的class的運(yùn)行流程

1. 定義一個(gè)class.

2. 添加用戶自定義方法.

3. 等待用戶使用class進(jìn)行創(chuàng)建.

4. 使用new方法根據(jù)類來創(chuàng)建一個(gè)對(duì)象.

5. 操作對(duì)象.

cf如何使用class

1.導(dǎo)入class函數(shù)

  local class = require "class"

class庫已經(jīng)添加到cf框架都路徑中, 可以在任意地方直接導(dǎo)入

2. 創(chuàng)建一個(gè)基本的lua class

  local Humen = class("Humen")


  function Humen:ctor(opt)
    -- 不存在的ctor會(huì)發(fā)出警告
    -- 即使不需要初始化, 請(qǐng)定義后留空
  end

ctor內(nèi)部發(fā)生錯(cuò)誤將會(huì)拋出異常.

3. 初始化lua class

  local Humen = class("Humen")


  function Humen:ctor(opt)
    self.name = opt.name
    self.age = opt.age
    self.sex = opt.sex
  end


  local man = Humen:new({name = "水果糖", age = 27, sex = 'man'})


  print(man.name, man.age, man.sex)

ctor僅為初始化使用, new方法將會(huì)返回一個(gè)成功創(chuàng)建的對(duì)象.

4. 為class增加一些方法

  local Humen = class("Humen")


  function Humen:ctor(opt)
    self.name = opt.name
    self.age = opt.age
    self.sex = opt.sex
  end


  function Humen:run()
    print("I'm run.")
  end


  local man = Humen:new({name = "水果糖", age = 27, sex = 'man'})


  print(man.name, man.age, man.sex)


  man:run()

5. 為class的自定義方法添加一些接受參數(shù)

  local Humen = class("Humen")


  function Humen:ctor(opt)
    self.name = opt.name
    self.age = opt.age
    self.sex = opt.sex
  end


  function Humen:setAge(age)
    self.age = age
  end


  function Humen:setName(name)
    self.name = name
  end
  local man = Humen:new({name = "水果糖", age = 27, sex = 'man'})


  print(man.name, man.age, man.sex)


  man:setName("Candy")
  man:setAge(28)

最后

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)