10.1. Metoda main
W języku Scala można tworzyć programy skompilowane do plików z rozszerzeniem .class, które z kolei można uruchamiać z poziomu systemu operacyjnego tak jak programy napisane w języku Java. Jednym ze sposobów na utworzenie takiego programu jest skompilowanie obiektu zawierającego publiczną metodę o nazwie main, która posiada jedną listę parametrów, zawierającą parametr typu Array[String]. Plik HelloWorld.scala zawiera przykład tak zdefiniowanego obiektu.
Plik HelloWorld.scala: object HelloWorld { def main(args: Array[String]) { println("Hello World") } }
Kompilacja tego pliku powoduje utworzenie dwóch plików klas.
$ scalac HelloWorld.scala $ dir /b *.class HelloWorld$.class HelloWorld.class $
Po skompilowaniu programu możemy go uruchomić za pomocą polecenia scala z argumentem zawierającym nazwę obiektu.
$ scala HelloWorld Hello World
Parametr args może zostać wykorzystany do uzyskania dostępu do wartości argumentów przekazanych do programu przy jego uruchomieniu. W pliku HelloArgs.scala znajduje się program, który wykorzystuje tę możliwość do wypisania pozdrowienia zawierającego w swojej treści wartości przekazanych do programu argumentów. Użyta metoda mkString przekształca zawartość tablicy na łańcuch znaków zawierający tekstowe reprezentacje elementów tablicy, rozdzielone separatorem podanym jako argument metody.
Plik HelloArgs.scala: object HelloArgs { def main(args: Array[String]) { println("Hello "+args.mkString(" ")+"!") } }
Poniższe polecenia powodują skompilowanie programu oraz wywołanie go z przykładowymi argumentami za pomocą polecenia scala.
$ scalac HelloArgs.scala $ scala HelloArgs Peter John Paul Hello Peter John Paul!
![]() | Skompilowana klasa HelloWorld zawiera metodę statyczną main, odpowiadającą wymogom języka Java dotyczącym klas, które mogą być uruchomione z linii poleceń. Do uruchomienia kodu zawartego w metodzie main można również użyć polecenia java. Trzeba jednak zapewnić obecność na ścieżce klas odpowiednich klas biblioteki języka Scala. Poniższy przykład pokazuje uruchomienie programu HelloWorld za pomocą polecenia java. $ java -cp L:/scala-2.11.7/lib/scala-library.jar;. HelloWorld Hello World |
Plik HelloWorld.scala:
object HelloWorld {
def main(args: Array[String]) {
println("Hello World")
}
}

