Kapitel 8. Methoden

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

In diesem letzten Kapitel über Domänenmodellierung geht es um Methoden, die innerhalb von Klassen, Fallklassen, Traits, Enums und Objekten definiert werden können. Ein wichtiger Hinweis - und eine große Veränderung in Scala 3 - ist, dass Methoden auch außerhalb dieser Konstrukte definiert werden können. Eine vollständige Scala 3-Anwendung kann also wie folgt aussehen:

def printHello(name: String) = println(s"Hello, $name")
def printString(s: String) = println(s)

@main def hiMom =
    printHello("mom")
    printString("Look mom, no classes or objects required!")

Scala-Methoden sind ähnlich wie Methoden in anderen typisierten Sprachen. Sie werden mit dem Schlüsselwort def definiert, nehmen in der Regel einen oder mehrere Parameter an, haben einen Algorithmus, den sie ausführen, und geben eine Art Ergebnis zurück. Eine einfache Methode - eine, die keine generischen Typen oder using Parameter hat - ist wie folgt definiert:

def methodName(paramName1: type1, paramName2: type2, ...): ReturnType =
    // the method body
    // goes here

Die Deklaration des Rückgabetyps der Methode ist optional, aber ich finde, dass es für die Pflege von Anwendungen, die ich seit Monaten oder Jahren nicht mehr angeschaut habe, einfacher ist, den Typ jetzt zu deklarieren, um ihn in den nächsten Tagen, Monaten und Jahren zu verstehen. Wenn ich den Typ nicht hinzufüge - ...

Get Scala Kochbuch, 2. Auflage now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.