Scala versuchen, Fang zu fangen

Scala versuchen, Fang zu fangen
Ausnahmen in einer Programmiersprache sind definiert als das unerwartete Verhalten, das sich aus der Ausführung eines irrelevanten oder logisch falschen Code -Stücks ergibt. Wir verwenden den Ausdruck „Fang“ in Scala, um diese Ausnahmen anmutig zu bewältigen. Innerhalb des Blocks „Try“ schreiben wir Code, der wahrscheinlich einen Fehler werfen wird, während wir uns mit diesen Ausnahmen innerhalb des "Catch" -Blocks befassen. Dieses Konzept ähnelt dem in Java verwendeten; Der einzige Unterschied besteht jedoch darin, dass der Ausdruck „Catch Catch“ in Scala über das Konzept des Musteranpassungen funktioniert, und Sie werden mehr darüber erfahren, indem Sie diesen Artikel durchlaufen.

Beispiele für die Verwendung des Ausdrucks von Scala aus dem Versuch:

Um zu verstehen, wie der Ausdruck des Versuchs in Scala verwendet werden kann, müssen Sie die folgenden Instanzen durchlaufen, die wir in einem Ubuntu 20 implementiert haben.04 System.

Beispiel Nr. 1: Eine arithmetische Ausnahme mit dem Ausdruck des Try Catch -Ausdrucks in Scala fangen:

Arithmetische Ausnahmen treten am wahrscheinlichsten bei der Durchführung mathematischer Berechnungen in Scala auf. Das Auftreten dieser Ausnahmen impliziert, dass einige Regeln der Mathematik verletzt wurden. Um den Prozess des Fangens einer arithmetischen Ausnahme in Scala zu erfahren, müssen Sie sich den folgenden Code ansehen:

In diesem Beispiel haben wir zuerst eine "Trycatch" -Klasse in Scala erstellt. Dann haben wir innerhalb der Funktion "main ()" unseres Programms einen "Try" -Block in den Ausdruck, der eine Zahl durch "0" unterteilt. Wir alle wissen, dass in der Mathematik eine beliebige Zahl geteilt durch Null zu einem Fehler führt, da sie gleich unendlich ist. Daher wird dieser Ausdruck in Scala wahrscheinlich auch eine Ausnahme auswerfen, die wir im „Catch“ -Block unseres Codes fangen werden. Innerhalb des Blocks "Catch" haben wir einen Fall mit der Titel "Ausnahme"."Wir haben diese Ausnahme als" ArithmeMexception "bezeichnet.„Wir haben innerhalb dieser Fall eine Nachricht auf dem Terminal gedruckt, um den Benutzer darüber zu informieren, dass eine arithmetische Ausnahme aufgetreten ist.

Um zu sehen, wie dieses Skala -Skript funktioniert, haben wir es zuerst mit dem unten gezeigten Befehl zusammengestellt:

$ scalac trycatch.Scala

Dann mussten wir es mit dem folgenden Befehl ausführen:

$ scala trycatch

Die Ausgabe dieses Skala -Skripts wird im Bild unten gezeigt, was bestätigt, dass in unserem Scala -Skript eine arithmetische Ausnahme aufgetreten ist, da wir versucht haben, eine Zahl durch "0" zu teilen.

Beispiel Nr. 2: Verwenden des Ausdrucks von Try Catch -Ausdruck in Scala mit mehreren Fallanweisungen:

In dem oben diskutierten Beispiel haben wir nur eine einzelne „Fall“ -Anweisung verwendet, da wir uns der Ausnahme sicher waren, die auf uns geworfen werden konnte. Wenn Sie sich jedoch der Ausnahme nicht sicher sind, die aufgrund des Ausführens eines bestimmten Codes ausgelöst wird, benötigen Sie mehrere verschiedene Ausdrücke, um diese Ausnahmen zu fangen. In Scala können Sie jedoch mehrere Fälle innerhalb desselben "Catch" -Blocks haben, anstatt mehrere „Fangausdrücke“ zu haben. Auf diese Weise funktioniert der Ausdruck „Catch“ nach dem Prinzip der Musteranpassung, und die am besten geeignete Ausnahme aus allen Fällen entsprechend der Situation wird dem Benutzer präsentiert. Dies zeigt das folgende Skala -Skript:

Wir haben einige Bibliotheken aufgenommen, bevor wir unseren tatsächlichen Code in dieses Beispiel geschrieben haben. Diese Bibliotheken enthalten die Implementierung der Ausnahmen, die wir in diesem Skript verwenden werden. Nachdem wir diese Bibliotheken eingefügt hatten, haben wir eine "Trycatch" -Klasse deklariert, in der es eine "main ()" -Funktion gibt. In dieser Funktion haben wir einen "Try" -Block, in dem wir einen Wert mit dem Namen "Lesen" erstellt und versucht haben, eine Datei mit dem Namen "ABC" zu lesen.txt". Beachten Sie, dass diese Datei in unserem System nicht vorhanden ist, was bedeutet, dass ein Fehler als Ergebnis des Ausführens dieses Codes angezeigt wird. In unserem "Catch" -Block haben wir dann zwei verschiedene "Fall" -Anweisungen. Der erste wird ausgeführt, wenn ein "Filenotfound" -Fehler angezeigt wird, der in diesem Fall zutrifft. Wenn es sich jedoch um eine "IO" -Ausnahme handelt, wird der zweite Fall des "Catch" -Blocks ausgeführt.

Sobald wir dieses Skript kompiliert und ausgeführt haben, erschien eine Ausnahme von "Filenotfound" auf dem Terminal, weil wir versucht haben, eine Datei zu lesen, die in unserem System nicht vorhanden war.

Beispiel Nr. 3: Verwenden des Ausdrucks des Versuchs Catch mit dem endgültigen Ausdruck in Scala:

Manchmal schreiben Sie ein langwieriges Skript. Sie sind sich über einen bestimmten Teil dieses Skripts nicht sicher und ob es erfolgreich ausgeführt wird oder nicht. Sie möchten jedoch immer noch, dass ein anderer Teil dieses Skripts unabhängig vom Auftreten einer Ausnahme ausgeführt wird. In diesem Fall müssen Sie diesen Teil Ihres Skripts in den Ausdruck „Endlich“ schreiben. Dies ist im folgenden Skript zu sehen:

Sie können in den oben gezeigten Bildern sehen, dass dieses Skript das gleiche ist wie in unserem zweiten Beispiel. Der einzige Teil, den wir zu diesem Skript hinzugefügt haben. In diesem Ausdruck haben wir einfach eine zufällige Nachricht gedruckt. Sie können jedoch jeden Code in diesem Ausdruck schreiben, den Sie in irgendeiner Weise ausgeführt werden möchten.

Das unten gezeigte Bild zeigt die Ausgabe dieses Skala -Skripts an. Sie können sehen, dass die Anweisung zwar eine Ausnahme aufgrund des Ausführens dieses Skripts auftrat, die Anweisung in dem Block „Endlich“ geschrieben wurde, wurde immer noch ausgeführt.

Abschluss:

Dieser Leitfaden sollte das Konzept des „Versuchs fangen“ in Scala in Ubuntu 20 erklären.04. Erstens haben wir Ihnen den Zweck dieses Ausdrucks in Scala beigebracht und seine Ähnlichkeit mit Java kommentiert. Um die Verwendung klar zu erklären, haben wir Ihnen drei verschiedene Beispiele erklärt, die diesen Ausdruck in Scala implementiert haben. Wir haben auch hervorgehoben, wie Sie mehrere Ausnahmen ausmachen können, indem Sie mehrere „Fälle“ innerhalb eines einzelnen "Catch" -Blocks verwenden. Nachdem Sie diese grundlegenden Konzepte gelernt haben, können Sie Programme effizient in die Scala -Programmiersprache schreiben.