0
我有一些实现特征的对象。我正在尝试拥有一个对所有这些对象都是静态和通用的val
。我有read这样做的方式是使用伴侣对象的特质。我已经使用了以下情况:由扩展对象共享的特征中的静态值
trait Test
object Test extends Test{
val a = 1
}
object Test2 extends Test{
def test = {
val b = a
}
}
然而,在该行val b = a
我得到一个“未找到:值”的错误。我将不胜感激一些如何解决这个问题的帮助。同伴对象
这工作。谢谢。 “对象测试”和“对象测试”之间有什么区别?两者似乎都是一样的。 – Eduardo
''Test Test''是'class Test'(它的伴侣类)的伴侣对象。他们在scala中的名字是相同的,但它们是两个单独的类(并且'object Test'也是一个单例)。所以通过输入'object Test extends Test',你可以让这个单例扩展'class Test'。在上面的例子中,虽然没有理由这样做。 – ghik
将它作为伴侣对象有任何价值吗?如果我将它命名为'TestX'并执行导入,它仍然有效。 – Eduardo