Hello World と基本的なこと

HelloWorld

まずは伝統的なHelloWorldをから始めます。

object Main {
  def main(args: Array[String]) = {
    println("Hello, world!")
  }
}

Scala ではクラス中の static メソッドはサポートされていません。その代わり、object キーワードで定義される singleton オブジェクトを使います。singleton オブジェクト中の全てのメソッドは、Java での static メソッドに相当します。
また、関数は def キーワードにより宣言します。

object と class

クラス宣言は普通に可能です。

class Hoge {
  ・・
}

一方 object 宣言は、

object Hoge {
  ・・
}

これで Hoge は singleton です。
前述の HelloWorld は object でした。つまりその中の main 関数は静的にアクセスできることになります。そのため、Javaで必要であった static は不要となっています。


さらに簡単なHelloWorld

Application という trait を extends することで、さらに簡単に書けます。

object Main extends Application {
  println("Hello World2!!")
}