See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Manejo de excepciones - Wikipedia, la enciclopedia libre

Manejo de excepciones

De Wikipedia, la enciclopedia libre

El manejo de excepciones es una estructura de control de los lenguajes de programación diseñada para manejar condiciones anormales que pueden ser tratadas por el mismo programa que se desarrolla.

Por ejemplo, un programa puede admitir cierto número de errores en el formato de los datos y continuar su proceso para producir el mejor resultado posible en lugar de producir una salida aparatosa llena de mensajes de error probablemente incomprensibles para el usuario. Muchas veces la acción asociada a una excepción es simplemente producir un mensaje informativo y terminar, otras veces, es sólo indicación de la necesidad de un cambio en la estrategia de resolución del problema.

Algunos lenguajes de programación, por ejemplo Lisp, Ada, C++, C#, Delphi, Objective C, Java, PHP , Python ,Eiffel y Ocaml incluyen soporte para el manejo de excepciones. En esos lenguajes, al producirse una excepción se desciende en la pila de ejecución hasta encontrar un manejador para la excepción, el cual toma el control en ese momento.

Ejemplo de manejo de excepción en Java:

import java.io.IOException;
 
// ...
 
public static void main(String[] args) {
    try {
        // Se ejecuta algo que puede producir una excepción
    } catch (IOException e) {
         // manejo de una excepción de entrada/salida
    } catch (Exception e) {
         // manejo de una excepción cualquiera
    } finally {
         // código a ejecutar haya o no excepción
    }
}

Ejemplo de manejo de excepción en Delphi:

procedure TForm1.Button1Click(Sender : TObject);
begin
   try
     try
       a := b / c;
    finally
      // Este código siempre se ejecuta, independientemente de si ocurre o no una excepción.
    end;
  except
    on e:EZeroDivide do
      // Manejo de la excepción División por cero.
    on e:Exception do
      // Manejo de una excepción "genérica".
  end;
end;

Ejemplo de manejo de excepción en Python:

try:
    result = x / y
except ZeroDivisionError:
    print "division by zero!"
else:
    print "result is", result
finally:
    print "executing finally clause"

Ejemplo de manejo de excepcion en Ada

type T_Matriz is array (Positive range <>,
                        Positive range <>) of Integer; 
procedure Rellenar_Matriz 
   (Matriz : in T_Matriz;
    K      : in Integer;
    Q      : in Integer);
is
begin
   begin
      Matriz (K,Q) := 3;
   exception
      when Constraint_Error =>
   Put_Line ("Las posiciones se salen del rango de la matriz");
   end;
end Rellenar_Matriz;


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -