我在package.scala中定义了一个包对象内的类型,如下所示。
type Structure = List [(int, int)]
现在我想在abc.scala中的类中使用此结构,并单独获取列表的元素。 abc.scala和package.scala位于同一个文件夹(src / utility)中。
class abc (d: Structure) {
val a = d._1
val b = d._2
...................
...................
}
它编译,但我需要在另一个文件夹(测试)中尝试测试。我在测试代码中导入了包实用程序,如下所示。
import utility._
class test {
val a = utility.Structure ((1, 2), (2, 5))
............................
............................
}
我收到以下错误:
对象结构不是包src.utility的成员
注意:类型结构存在,但它没有伴随对象。
如何定义该类型的伴随对象?我需要使用类abc中的类型。
答案 0 :(得分:3)
所以,听起来你有这样的事情:
package src
package object utility {
type Structure = List[(Int, Int)]
}
要获得所需内容,只需添加val Structure = List
即可。所以,它看起来像这样:
package src
package object utility {
type Structure = List[(Int, Int)]
val Structure = List
}
现在,只要您导入包,Structure((1, 2))
就会起作用。