我编写了一个Scala类并main()在其中定义了该方法.它编译了,但是当我运行它时,我得到了NoSuchMethodError:main.在我看到的所有scala示例中,main方法是在一个对象中定义的.在Java中,我们在类中定义main方法.是否可以main()在Scala类中定义或者我们是否总是需要一个对象?
我刚刚开始学习Scala,我正在遵循的许多教程都使用了一种main方法的不同表示形式的组合.除了熟悉的主要方法; 还有使用特征App或Application.它似乎Application已被弃用,不推荐使用,但我找不到任何有关这些定义入口点的方法的信息.
所以,我想知道是否有人可以向我解释:
App和Application工作如何?Application不再推荐这个App特性,这个特性有什么不同呢?App来启动我的程序?这两种方法有什么区别?如果我使用下面考虑我不需要参数,它不会在eclipse中检测到Scala.
object HelloWorld {
def main(): Unit = {
println("Hello Scala!!!")
}
}
Run Code Online (Sandbox Code Playgroud)
它工作得很好 args: Array[String]
object HelloWorld {
def main(args: Array[String]): Unit = {
println("Hello Scala!!!")
}
}
Run Code Online (Sandbox Code Playgroud)