Sie brauchen nicht die Console
vor der Erklärung zu schreiben, weil die Scala Predef
Objekt, das automatisch für jede Scala Quelldatei importiert wird, Definitionen wie diese enthält:
def println() = Console.println()
def println(x: Any) = Console.println(x)
Sie können nicht einfach erstellen eine "globale" Methode, die automatisch überall selbst sichtbar ist. Was Sie tun können, solche Verfahren in einem Paketobjekt gesetzt wird, zum Beispiel:
package something
package object mypackage {
def foo(name: String): Unit = println("Hello " + name")
}
aber in der Lage sein, es zu benutzen, müssen Sie das Paket importieren:
import something.mypackage._
object MyProgram {
def main(args: Array[String]): Unit = {
foo("World")
}
}
(Hinweis: Anstatt eines Paketobjekts könnten Sie es auch in ein reguläres Objekt, eine Klasse oder ein Merkmal einfügen, solange Sie den Inhalt des Objekts, der Klasse oder des Merkmals importieren - Paketobjekte sind jedoch mehr oder weniger für diesen Zweck gedacht.
Danke. Fast perfekte Antwort. Gibt es eine Möglichkeit, den Import zu vermeiden? Ich meine: Kann ich dieses "Predef" -Objekt verbessern? – fratnk
Das Paketobjekt wird automatisch in alle Klassen und Objekte in diesem Paket importiert. – missingfaktor
@fratnk: Über die Verwendung von StackOverflow: Sie können auf das Häkchen oben links in meinem Beitrag klicken, um es als Antwort auf Ihre Frage zu akzeptieren. – Jesper