如何在标准scala库中定义阴影特征

如何在标准scala库中定义阴影特征,scala,functional-programming,Scala,Functional Programming,我是scala和函数式编程的初学者,正在努力学习基础知识。为此,我开始读这本书。从一组练习开始,他们定义了一个列表类(如下所示) 这应该行得通。但当我尝试在scala工作表(IntelliJ插件)中执行同样的操作时,我看到错误,方法sum和product不能应用于这样的函数定义(引发的确切错误是类型不匹配,所需的Byte/Char/Int/Double…,找到任何)。因此,我的问题是如何在我的包中定义的trait/工作表中覆盖scala库中定义的数据结构。IntelliJ IDE中突出显示的错误

我是scala和函数式编程的初学者,正在努力学习基础知识。为此,我开始读这本书。从一组练习开始,他们定义了一个列表类(如下所示)


这应该行得通。但当我尝试在scala工作表(IntelliJ插件)中执行同样的操作时,我看到错误,方法
sum
product
不能应用于这样的函数定义(引发的确切错误是
类型不匹配,所需的Byte/Char/Int/Double…,找到任何
)。因此,我的问题是如何在我的包中定义的trait/工作表中覆盖scala库中定义的数据结构。

IntelliJ IDE中突出显示的错误似乎具有误导性。实际错误是示例中的递归函数缺少返回类型:

def sum(ints: List[Int]):Int

def product(ds: List[Double]):Double

按下
评估工作表
绿色箭头按钮后,IntelliJ将在消息窗格中显示这些错误。

谢谢Suma,实际上工作表本身存在一些问题。重新启动IntelliJ和评估工作表为我提供了与您相同的提示。
def sum(ints: List[Int]):Int

def product(ds: List[Double]):Double