面向类的 OOP 模块,用于 Lua
这是一个面向类的 Lua 模块的实现,完全用 Lua 编写。该对象模型允许您覆盖“new()”(参见测试),因此您可以编写行为符合您期望的类。虽然仍在设计阶段,但接口已经相当稳定,如果用户要求,或者我自己需要,我会添加多重继承机制。
特性
- 面向类
- 所有类都派生自 Object
- 单继承(如果有人需要,将添加多重继承)
- 所有方法调用都是虚拟的,实例的类决定绑定方法
- 在覆盖方法中使用类似 Java 的
super.method(self)
访问超类方法
- 使用 super 只能访问方法,不能访问数据成员(防止许多弊端)
- 一致地使用
:
,始终使用 :
调用任何类或实例的任何方法
- 对象模型允许在任何类中重新定义
new()
(参见测试)
- 使用“has”定义成员(受 Moose 启发)
- 希望只有一种做事方式,结果非常可预测
有关更多详细信息和示例,请参阅项目的 [GitHub 页面]。
另请参阅
最近更改 · 偏好设置
编辑 · 历史记录
最后编辑于 2012 年 5 月 30 日下午 11:58 GMT (差异)