【发布时间】:2014-03-21 18:14:15
【问题描述】:
scala 能够使用默认参数和鸭子类型吗?
下面的代码抛出错误:这里只允许声明
def test(x: { def x(a:Int, b:Int = 5):Int} ) = x(1)
【问题讨论】:
-
a) 我很困惑。 b) 这不是鸭子打字,是吗?
-
是鸭子打字。测试功能需要任何具有适当“x”方法的对象
-
我不是 Scala 专家,但我认为您需要为此使用特征。我不认为你可以用这种语法做你想做的事情。
-
好的。我显然错了。每天学习新东西。
-
我使用一个播放框架,我想将我的观点传递给方法。播放框架从 html 文件编译视图,我不会更改结果对象以使用特征
标签: scala duck-typing