Escala | Excepciones de prueba y captura

La construcción Try-Catch es diferente en Scala que en Java, Try-Catch en Scala es una expresión. Scala hace uso de la coincidencia de patrones en la cláusula catch. Supongamos que tenemos que implementar una serie de código que puede generar una excepción y, si queremos controlar esa excepción, debemos utilizar el segmento Try-Catch, ya que nos permite intentar capturar todos y cada uno de los tipos de excepción en un solo bloque. , necesitamos escribir una serie de declaraciones de casos en catch, ya que Scala usa la coincidencia para analizar y manejar las excepciones.

  • Ejemplo :

    // Scala program of try-catch
    // exception
      
    // Creating object
    object Arithmetic
    {
      
    // Main method
    def main(args: Array[String]) 
    {
          
        // Try clause
        try
        {
            // Dividing a number
            val result = 11/0
        }
          
        // Catch clause
        catch
        
                // Case statement
                case x: ArithmeticException => 
                
              
                // Display this if exception is found
                println("Exception: A number is not divisible by zero.")
            }
        }
    }
    }
    Producción:

    Exception: A number is not divisible by zero.
    

    Aquí, se lanza una excepción ya que un número no es divisible por cero.

  • Ejemplo :

    // Scala program of Try-Catch
    // Exception
    import java.io.FileReader
    import java.io.FileNotFoundException
    import java.io.IOException 
      
    // Creating object
    object GfG
    {
      
    // Main method
    def main(args: Array[String]) 
    {
          
        // Try clause
        try
        {
            // Creating object for FileReader
            val t = new FileReader("input.txt")
        
          
        // Catch clause
        catch
        {
          
            // Case statement-1
            case x: FileNotFoundException =>
            {
                // Displays this if the file is
                // missing
                println("Exception: File missing")
                  
            }
          
            // Case statement-2
            case x: IOException   => 
            {
              
                // Displays this if input/output 
                // exception is found
                println("Input/output Exception")
              
            }
        }
    }
    }
    Producción:

    Exception: File missing
    

    Aquí, el bloque try se ejecuta primero y si se lanza alguna excepción, se verifica cada uno de los casos de la cláusula catch y se devuelve como salida el que coincide con la excepción lanzada.

Publicación traducida automáticamente

Artículo escrito por nidhi1352singh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *