我有一个包含这两个元素的scala类Foo.scala
,
第一个,
case class Foo(
.
.
.
)
其次,
object Foo{
.
.
.
}
现在当我在其他文件中导入Foo时,我想使用case类而不是Object,但是当我导入文件时,对象实例在Foo中返回< =这是对象,(我需要做) Foo.apply,Foo.tupled)
无论如何,我可以让Foo充当案例类然后作为对象。
答案 0 :(得分:0)
您的scala名称空间中存在歧义。该问题的一个简单解决方案是将case类嵌套在对象内部,然后使用
导入它 import Foo.Foo
另一个解决方案是将它们放在单独的包中。根据您的系统设计,这可能会影响您的包装的凝聚力,在我看来这可能更重要。
答案 1 :(得分:0)
你可以试试这个
(Foo.apply _).tupled