Scala prova cattura

Scala prova cattura
Le eccezioni in qualsiasi linguaggio di programmazione sono definite come il comportamento imprevisto derivante dall'esecuzione di un pezzo di codice irrilevante o logicamente errato. Usiamo l'espressione di "prova cattura" in Scala per gestire queste eccezioni con grazia. All'interno del blocco "prova", scriviamo un codice che probabilmente lancerà un errore, mentre ci soddisfiamo quelle eccezioni all'interno del blocco "cattura". Questo concetto è praticamente simile a quello usato in Java; Tuttavia, l'unica differenza è che l'espressione "Try Catch" in Scala funziona sul concetto di abbinamento del pattern e imparerai di più su questo articolo.

Esempi di utilizzo dell'espressione di prova di Scala:

Per capire come espressione di cattura di prova può essere utilizzata in Scala, dovrai passare attraverso i seguenti casi che abbiamo implementato su un Ubuntu 20.04 Sistema.

Esempio n. 1: catturare un'eccezione aritmetica con l'espressione di cattura di prova in Scala:

È molto probabile che si verifichino eccezioni aritmetiche durante l'esecuzione di calcoli matematici in Scala. Il verificarsi di queste eccezioni implica che alcune regole della matematica sono state violate. Per imparare il processo di cattura di un'eccezione aritmetica in Scala, dovrai dare un'occhiata al seguente codice:

In questo esempio, abbiamo creato per la prima volta una classe "Trycatch" in Scala. Quindi, all'interno della funzione "main ()" del nostro programma, abbiamo un blocco "prova" all'interno del quale abbiamo un'espressione che divide un numero per "0". Sappiamo tutti che in matematica, qualsiasi numero diviso per zero porta a un errore poiché è uguale all'infinito. Pertanto, questa espressione in Scala è anche probabile che lanci un'eccezione che catturemo nel blocco "cattura" del nostro codice. All'interno del blocco "cattura", abbiamo un caso con il titolo "Eccezione."Abbiamo chiamato questa eccezione come" aritmeticexception."Abbiamo stampato un messaggio sul terminale all'interno di questa dichiarazione del caso per informare l'utente che si è verificata un'eccezione aritmetica.

Per vedere come funziona questo script Scala, l'abbiamo prima compilato con il comando mostrato di seguito:

$ Scalac Trycatch.Scala

Quindi, abbiamo dovuto eseguirlo con il seguente comando:

$ Scala Trycatch

L'output di questo script Scala è mostrato nell'immagine seguente, che conferma che una eccezione aritmetica si è verificata nel nostro script Scala da quando abbiamo tentato di dividere un numero per "0".

Esempio n. 2: usando l'espressione di cattura di prova in Scala con più istruzioni di casi:

Nell'esempio discusso in precedenza, abbiamo utilizzato solo una singola dichiarazione "caso" poiché eravamo sicuri dell'eccezione che poteva essere lanciata contro di noi. Tuttavia, quando non si è sicuri dell'eccezione che verrà lanciata a causa dell'esecuzione di un particolare pezzo di codice, è necessario più espressioni diverse per catturare queste eccezioni. Tuttavia, in Scala, invece di avere più espressioni di "cattura", è possibile avere più casi all'interno dello stesso blocco "cattura". In questo modo, l'espressione di "cattura" funzionerà sul principio della corrispondenza dei pattern e l'eccezione più adatta tra tutti i casi in base alla situazione sarà presentata all'utente. Questo è dimostrato dal seguente script Scala:

In questo esempio abbiamo incluso alcune librerie prima di scrivere il nostro codice effettivo. Queste librerie contengono l'implementazione delle eccezioni che useremo in questo script. Dopo aver incluso queste librerie, abbiamo dichiarato una classe "TryCatch" all'interno della quale esiste una funzione "Main ()". All'interno di questa funzione, abbiamo un blocco "try" in cui abbiamo creato un valore chiamato "lettura" e abbiamo provato a leggere un file con il nome "ABC.TXT". Si noti che questo file non esisteva sul nostro sistema, il che significa che un errore verrà mostrato a seguito dell'esecuzione di questo codice. Quindi, all'interno del nostro blocco "cattura", abbiamo due diverse dichiarazioni "caso". Il primo verrà eseguito se viene visualizzato un errore "FileNotFound", che è vero in questo caso. Tuttavia, se si tratta di un'eccezione "io", verrà eseguito il secondo caso del blocco "catch".

Una volta compilato ed eseguito questo script, sul terminale è apparsa un'eccezione "FileNotFound" perché abbiamo provato a leggere un file che non esisteva sul nostro sistema.

Esempio n. 3: usando l'espressione di prova con l'espressione finalmente in Scala:

A volte scrivi una lunga sceneggiatura. Non sei sicuro di una certa parte di quello script e se verrà eseguito correttamente o meno; Tuttavia, si desidera ancora che venga eseguita un'altra parte di tale script indipendentemente dal verificarsi di qualsiasi eccezione. In tal caso, devi scrivere quella parte della tua sceneggiatura all'interno dell'espressione "finalmente". Questo può essere visto nella seguente sceneggiatura:

Puoi vedere nelle immagini mostrate sopra che questo script è lo stesso di cui abbiamo discusso nel nostro secondo esempio; Tuttavia, l'unica parte che abbiamo aggiunto a questo script è l'espressione "finalmente". All'interno di questa espressione, abbiamo semplicemente stampato un messaggio casuale; Tuttavia, puoi scrivere qualsiasi pezzo di codice all'interno di questa espressione che si desidera essere eseguita in alcun modo.

L'immagine mostrata di seguito visualizza l'uscita di questo script Scala. Puoi vedere che sebbene si sia verificata un'eccezione a causa dell'esecuzione di questo script, la dichiarazione è stata scritta all'interno del blocco "Finalmente" è stata ancora eseguita.

Conclusione:

Questa guida era pensata per spiegare il concetto di "Try Catch" in Scala in Ubuntu 20.04. In primo luogo, ti abbiamo insegnato lo scopo di questa espressione in Scala e abbiamo commentato la sua somiglianza con Java. Quindi, per spiegare chiaramente il suo utilizzo, vi abbiamo spiegato tre diversi esempi che hanno implementato questa espressione in Scala. Abbiamo anche evidenziato come è possibile soddisfare più eccezioni semplicemente usando più "casi" all'interno di un singolo blocco "cattura". Dopo aver appreso questi concetti di base, sarai in grado di scrivere in modo efficiente programmi nel linguaggio di programmazione Scala.