Lua 通常被描述为具有基于原型(prototype)的继承(例如在 this answer 中)。然而,“Lua 编程”的 "Inheritance" section 谈到了“基类”和“父类(super class)”——来自基于类的继承的术语。

哪种基于原型(prototype)或基于类的模型最能描述 Lua 中继承的工作方式?

最佳答案

Lua 是基于原型(prototype)的。

从技术上讲,Lua 中没有类或继承或基类、父类(super class)。 Lua 有一些像元表这样的工具来模拟经典的 OOP。 PiL 书使用这些术语的主要原因是为了让读者更容易理解。

如果您喜欢描述语法的语言律师方式,请阅读 the reference manual ,您不会在那里找到这些术语。

关于class - Lua 中的继承是基于原型(prototype)的还是基于类的?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36987735/

10-15 07:47