2

为什么 Lift 框架中的映射器字段被定义为类内的对象?为什么不把它们当作 vals?当我查看他们的 Wiki 页面时,它说由于 Scala 的某些内部原因,我们将它们作为对象而不是 val 或 var。Scala 的内在原因或阻碍是什么?

4

1 回答 1

2

摘自《提升权威指南》,第 83 页:

...字段被定义为对象而不是实例成员(vars)[因为] MetaMapper 需要访问字段以进行验证和表单功能;如果 MetaMapper 必须访问每个实例上的成员变量,则在 MetaMapper 中干净地定义这些属性会更加困难,因为 MetaMapper 实例本身就是一个对象。

于 2010-10-17T01:10:33.450 回答