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

Język programowania Scala Wydanie 2. Copyright © Grzegorz Balcerek 2016

Licencja Creative Commons

Ten utwór jest dostępny na licencji Creative Commons Uznanie autorstwa-Na tych samych warunkach 4.0 Międzynarodowe.

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.