我对Scala很新。我正在使用IntelliJ IDE在Scala(2.11.7)中运行一个非常简单的程序。 我的程序就像
class Rational(n:Int,d:Int) {
val oneHalf = new Rational(1,2)
}
我试图将它作为Class而不是对象运行。我怎么能在IntelliJ中运行这个类?
由于
答案 0 :(得分:4)
正如@Clashsoft所说,你不能像这样初始化这个类。你可以做一些简单的事情来测试:
class Rational(n: Int, d: Int) {
def oneHalf: Int =
n * d
}
object MyProgram {
def main(args: Array[String]) {
val rational = new Rational(1, 2)
println(rational.oneHalf)
}
}
也可以使用App
特征(extends App
),然后您不需要主方法:
object MyProgram extends App {
val rational = new Rational(1, 2)
println(rational.oneHalf)
}
全部取决于您最终如何实施解决方案。关于主要和App
特征之间的差异,请read more。
向@tzachzohar发送以下内容:
在Scala中,就像在Java中一样,只有静态main
方法(具有适当的参数和返回类型)可以作为程序的入口点。为方便起见,IntelliJ IDEA提供了Scala Worksheet作为轻松测试代码的方法,但这也没有什么神奇之处 - 它是一个非常好的包装器 - 在幕后,工作表有自己的main
方法调用你的码。