阅读了文章后用流程图来总结一下
__newindex的规则:
a.如果__newindex是一个函数,则在给table不存在的字段赋值时,会调用这个函数。 b.如果__newindex是一个table,则在给table不存在的字段赋值时,会直接给__newindex的table赋值。
应用:
1.__newindex是一个function时,可用来控制一个表中不存在的字段的赋值行为,例如当不希望子类覆盖父类方法或者修改父类成员时,可以对子类__newindex进行修改。
2.保护__index里面的元素不被修改,让其只读
...后续补充
|
请发表评论