Scala,导入我的包

时间:2014-02-02 13:02:14

标签: scala

这应该很简单,但对于我的生活,我在Scala中找不到如何做到这一点。

我定义了一个包:

package myown.utils
{
    class  Test {
        def showMe(n: Int) = {
                print(n)
        }
    }
}

现在,如果我导入myown.utils,我必须编写Test.showMe

如何将“showMe”显示为一个我可以直接使用的功能,而无需先预先登记该类的名称?我知道这是可能的,因为当我导入一些软件包时会发生这种情况。

2 个答案:

答案 0 :(得分:6)

我认为您不理解objectclass

之间的区别
package myown.utils
object  Test {
  def showMe(n: Int) = {
    print(n)
  }
}

您现在可以:

import myown.utils.Test._

object是一个单例,是Test类的全局实例。使用正常的class,您显然必须先实例化它,然后才能使用这些方法。

答案 1 :(得分:0)

您可以创建包对象:

package myown
{
    package object utils {
        def showMe(n: Int) = {
                print(n)
        }
    }
}

import myown.utils._