lua 模块与包,五

一.模块的介绍

  模块类似于1个封装库,从Lua 5.1 开始,Lua加入了标准的模块管理机制,可以把一些公用的代码放在一个文件里,以API接口的形式在其他地方调用,用利于代码
的重用和降低代码的耦合度。

1.定义一个模块

---   lua的模块是由变量、函数等已知元素组成的table,因此创建1个模块就是创建1个table,把
--- 需要导出的常量、函数放入其中,最后返回这个table就行。
-- ================ 1.定义1个模块 ==============

-- module.lua 文件名

-- 定义一个名为module的模块

module ={};

-- 定义一个常量

module.constant="这是一个常量"

-- 定义一个函数

function module.fun1()

io.write("这是一个公有函数")

end

-- 定义一个本地函数

local function fun2()

 print("这是一个私有函数")

end

function module.fun3()

fun2()

end

return module

 2.使用一个模块

  Lua提供了一个名为require的函数用来加载模块。要加载一个模块,只需要简单地调用就可以了。

调用方法:
    require("<模块名>")
    require "<模块名>"

执行 require 后会返回一个由模块常量或函数组成的 table,
并且还会定义一个包含该 table 的全局变量
require("com.zpb.demo1.module")
local m = require("com.zpb.demo.module") -- 也可以起个变量名

  print(module.constant);

  module.fun1();

  module.fun3();

  print(m.constant)