Programaci n orientada a objetos
This presentation is the property of its rightful owner.
Sponsored Links
1 / 29

Programación Orientada a Objetos PowerPoint PPT Presentation


  • 88 Views
  • Uploaded on
  • Presentation posted in: General

Programación Orientada a Objetos. Temario Excepciones Definición. Funcionalidad Tipos de Excepciones API de las Excepciones Captura de Excepciones (Try – Catch – Finally ) Clase Throwable Lazamiento de Excepciones ( Throw – Throwable ) Excepciones Definidas por el Usuario.

Download Presentation

Programación Orientada a Objetos

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Programaci n orientada a objetos

Programación Orientada a Objetos

Temario

  • Excepciones

    • Definición.

    • Funcionalidad

    • Tipos de Excepciones

    • API de las Excepciones

    • Captura de Excepciones (Try – Catch – Finally)

    • Clase Throwable

    • Lazamiento de Excepciones (Throw – Throwable)

    • Excepciones Definidas por el Usuario


Programaci n orientada a objetos

Excepciones

  • ¿Que pasa si tu te diriges a un lado, pero en medio del camino tienes un inconveniente ?

  • ¿Qué haces si estas trabajando manejando una maquinaria, pero de pronto esta empieza a fallar?

  • ¿Qué pasa si haces una operación matemática INCALCULABLE?

He aquí el uso practico de las

‘Excepciones’


Programaci n orientada a objetos

Excepciones

Definición:

  • Real:

    • Una excepción es predefinir una solución a un posible problema que pueda pasar

    • Una excepción es una exclusión de la regla.

  • Programación:

    • Es un código predefinido que solo se ejecuta siempre y cuando suceda algo especifico (usualmente problemas fuera del flujo de control específicos).

    • Las excepciones son los métodos que permiten ‘Capturar’ errores en tiempo real, y ejecutar un código ‘opcional’.


Programaci n orientada a objetos

Excepciones

Uso de excepciones:

(Funcionalidad)

  • Permite capturar problemas fuera de flujo en tiempo real.

  • Permite evitar posibles problemas de una aplicación, haciendo que la aplicación no termine forzadamente en una ejecución.

  • Cuando se ejecuta una excepción, esta misma toma el control de la situación, hasta que termina de controlarla y vuelve a donde se origino el problema.

  • Se puede capturar excepciones tanto muy especificas, como generales.

  • Es como una medida de “prevención de riesgos”.


Programaci n orientada a objetos

Excepciones

Tipos de excepciones

  • Existen varios tipos fundamentales de excepciones:

    • Error: Excepciones que indican problemas muy graves, que suelen ser no recuperables y no deben casi nunca ser capturadas.

    • Exception: Excepciones no definitivas, pero que se detectan fuera del tiempo de ejecución.

    • RuntimeException: Excepciones que se dan durante la ejecución del programa.


Programaci n orientada a objetos

Excepciones

Tipos de excepciones

  • De las excepciones fundamentales, cada una tiene sus excepciones derivadas (o especificas).

  • Alguna de las cuales son:

  • Error:

    • OutOfMemoryError: El lector ha agotado la memoria.

    • InternalError: Error interno en tiempo de ejecución.

    • UnknownError: Grave error desconocido.

    • VerifyError: Se ha producido un error de verificación al cargar una clase.

    • (etc …)


Programaci n orientada a objetos

Excepciones

Tipos de excepciones

  • Exception:

    • IOException: Excepciones relacionados con la entrada/salida de programas

      • FileNotFoundException: Excepcion cuando no se encuentra un archivo relacionado.

      • MalFormedURLException: Excepcion que se genera cuando una la ubicación de un archivo/pagina (URL) es incorrecta, o esta mal redactada.

      • (etc …)


Programaci n orientada a objetos

Excepciones

Tipos de excepciones

  • Exception:

    • RunTimeException:

      • NullPointerException: Se ha usado una referencia null para acceder a un campo.

      • ArithmeticException: Error de cálculo (como división por cero...).

      • ClassCastException: Intento de conversión inválida.

      • NegativeArraySizeException: Intento de creación de un vector de tamaño negativo.

      • (etc …)


Programaci n orientada a objetos

Excepciones

Sintaxis de

excepciones:

  • En JAVA, para manejar uso de excepciones en un bloque de código, se usan los TRY, CATCH y FINALLY.

  • Try:

    • try viene del ingles ‘Tratar’, y es donde se encapsula el código donde posiblemente puede llamarse una excepción por ejecuciones fuera del flujo esperado.

  • Si una cierta cantidad de código esta fuera de un TRY, este código esta libre de que llame una excepción.


Programaci n orientada a objetos

Excepciones

Sintaxis de

excepciones:

  • Catch:

    • Catch viene del ingles ‘Captar’, y es el lugar donde se listan las excepciones que se van a ‘tratar’ (try) junto con las ordenes de cada excepción. Las excepciones SIEMPRE se listan de la mas especifica, a las mas general.


Programaci n orientada a objetos

Excepciones

Sintaxis de

excepciones:

  • Finally:

    • Finally viene del ingles ‘Finalmente’, y es donde cuando un código fue tratado(try) y captado las excepciones(catch), con FINALLY va hacer una serie de instrucción Independiente si se llama una excepción o no.

    • Usualmente se usa esta clausula para finalizar conexiones, cerrar archivos, o cierre de aplicaciones.


Programaci n orientada a objetos

Excepciones

Ejemplo Excepciones:

(...)

publicstaticvoidmain(String[]args)

{

// Inicio de la aplicación

Servidor s = new Servidor();

Scanner teclado = new Scanner();

s.abrirConexion();

try

{

int numero1=100;

int numero2 = teclado.nextInt();

int resultado = numero1 / numero2;

System.out.println("El resultado es: "+resultado);

s.guardarResultado(resultado);

}

Catch(OutOfMemoryError e)

{

System.out.println("No hay memoria para almacenar");

}

catch(IOException e)

{

e.prinStackTrace();

}

Catch(ArithmeticExceptionae)

{

System.out.println("Error Matematico, no hay RESULTADO");

}

Finally

{

s.cerrarConexion();

}

}

(...)


Programaci n orientada a objetos

Excepciones

Ejemplo Excepciones:

catch(ArithmeticException e)

{

System.out.println(“Problemas al poder calcular");

}

catch(ClassCastException ex)

{

System.out.println(“Error al transformar a numero");

}


Programaci n orientada a objetos

Excepciones

Ejemplo Excepciones:

catch(ClassCastException e)

{

System.out.println("No se puede transformar el valor");

}

catch(NullPointerExceptione)

{

System.out.println("No pueden haber NULOS");

}

catch(ArrayIndexOutOfBoundsException ex)

{

System.out.println("has intentado dar valores FUERA DEL ARREGLO");

}


Programaci n orientada a objetos

Excepciones

Lazamiento de Excepciones (Throw – Throwable)

  • Las excepciones pueden lanzarse en cualquier momento con Throw

  • Throw es controlado por la clase padre de la llamada.

  • Throw permite agregar nuevas funcionalidades de validaciones

  • Para controlar una excepcion en el codígo no es necesaria controlarla en el main.

  • Throw permite utilizar excepciones personalizadas


Programaci n orientada a objetos

Excepciones

Ejercicio Resuelto

  • Lanzar un error cuando un numero sea negativo.

    • Crear un método que reciba como parámetro un número y agregamos la clausula throwsException para que lance la excepción a la clase que la llamo.

    • Crear en main la recepcion de un numero para la luego llamar el metodo validar todo dentro de un try-catch(Exception p)


Programaci n orientada a objetos

Excepciones

Ejercicio Resuelto

  • Crear un método que reciba como parámetro un número y agregamos la clausula throwsException para que lance la excepción a la clase que la llamo.

    public static void validar (int i) throws Exception

    {

    if(i<0)

    {

    throw new Exception("El Numeroesnegativo");

    }

    }


Programaci n orientada a objetos

Excepciones

Ejercicio Resuelto

  • Crear en main la recepcion de un numero para la luego llamar el metodo validar todo dentro de un try-catch(Exception p)

    packageexcepcionesthrow;

    importjavax.swing.JOptionPane;

    publicclassMain {

    publicstaticvoidmain(String[] args) {

    try

    {

    int numero = (Integer.parseInt(JOptionPane.showInputDialog("Ingrese un numero")));

    validar(numero);

    }

    catch(Exception p)

    {

    JOptionPane.showMessageDialog(null, p.getMessage());

    }

    }

    publicstaticvoid validar (int i) throwsException

    {

    if(i<0)

    {

    throw new Exception("El Numero es negativo");

    }

    }

    }


Programaci n orientada a objetos

Excepciones

Ejercicio Resuelto

  • Conclusiones

    • Clausula throws dice cual es la clase de tipo Excepcion que será lanzada

    • Clausula throwenvia la excepción hacia la clase que la llamo

    • Permite personalizar tus excepciones en tiempo de ejecución

Archivo:


Programaci n orientada a objetos

Excepciones

Ejercicios Propuestos

  • Crear un método que permita validar si el valor ingresado en un JOptionPane es Numerico.

  • Crear un método que permita validar si el valor ingresado en un JOptionPane es de tipo Carácteres.

  • Crear un método que permita validar si valor ingresado esta dentro del rango de 1 a 100


Programaci n orientada a objetos

Excepciones

API de las Excepciones


Programaci n orientada a objetos

Excepciones

Clase Throwable

  • Superclase de todas las clases de excepción.

  • Dos tipos heredados:

    • Error. Representa los errores del sistema y de compilación.

      • No se captura salvo en ocasiones especiales.

    • Exception. Tipo básico que puede lanzarse desde cualquier método de la biblioteca Java.

      • Es el utilizado para capturar y crear nuevas excepciones.


Programaci n orientada a objetos

Excepciones

Clase Throwable

  • Todas las excepciones tienen como clase base la clase Throwable, que está incluida en el paquete java.lang, y sus métodos son:

    • Throwable( String mensaje ); Constructor. La cadena es opcional

    • ThrowablefillInStackTrace(); Llena la pila de traza de ejecución.

    • StringgetLocalizedMessage(); Crea una descripción local de este objeto.

    • StringgetMessage(); Devuelve la cadena de error del objeto.

    • voidprintStackTrace( PrintStream_o_PrintWriter s ); Imprime este objeto y su traza en el flujo del parámetro s, o en la salida estándar (por defecto).

    • StringtoString(); Devuelve una breve descripción del objeto.


Programaci n orientada a objetos

Excepciones

Ejercicio Resuelto

  • Crear una clase a partir de Exception que maneje excepciones de números negativos

    • Crear clase PersonalizarException que herede de Exception

      • Crear un constructor que reciba un string

      • Mandar un mensaje al constructor de Exception con el string del constructor de PersonalizarException

    • Crear un metodo en el main que arroje el error llamado validar

      • Crear condición de numero negativo y lanzar throw new con la clase PersonalizarException y el mensaje personalizado.

  • Crear Flujo del Programa en donde reciba el numero y luego llame al metodo validar todo esto debe estar rodeado de un try-catch(PersonalizarException p)


Programaci n orientada a objetos

Excepciones

Ejercicio Resuelto

  • Crear clase PersonalizarException que herede de Exception

    • Crear un constructor que reciba un string

    • Mandar un mensaje al constructor de Exception con el string del constructor de PersonalizarException

      package excepciones;

      publicclassPersonalizarExceptionextendsException {

      publicPersonalizarException(String mensaje)

      {

      super(mensaje);

      }

      }


Programaci n orientada a objetos

Excepciones

Ejercicio Resuelto

  • Crear un metodo en el main que arroje el error llamado validar

    • Crear condición de numero negativo y lanzar throw new con la clase PersonalizarException y el mensaje personalizado.

      publicclassMain {

      publicstaticvoidmain(String[] args) {

      }

      publicstaticvoid validar (int i) throwsPersonalizarException

      {

      if(i<0)

      {

      throw new PersonalizarException("El Numero es negativo");

      }

      }

      }


Programaci n orientada a objetos

Excepciones

Ejercicio Resuelto

package excepciones;

importjavax.swing.JOptionPane;

publicclassMain {

publicstaticvoidmain(String[] args) {

try

{

int numero = (Integer.parseInt(JOptionPane.showInputDialog("Ingrese un numero")));

validar(numero);

}

catch(PersonalizarException p)

{

JOptionPane.showMessageDialog(null, p.getMessage());

p.printStackTrace();

}

}

publicstaticvoid validar (int i) throwsPersonalizarException

{

if(i<0)

{

throw new PersonalizarException("El Numero es negativo");

}

}

}


Programaci n orientada a objetos

Excepciones

Ejercicio Resuelto

Conclusiones

  • En el momento de ejecutar el método validar se produce un salto en el código por la excepción hacia el catch

  • Se pueden cambiar los mensajes arrojados del programa por mensajes propios

  • En el catch se pudo crear una excepción propia PersonalizarException

Archivo:


Programaci n orientada a objetos

Excepciones

Ejercicios Propuestos

  • Utilizando PersonalizarException controlar mensajes personalizados:

    • División por Cero

    • Casting Invalido

    • Creación de arreglo con indice negativo

    • Acceso a arreglo fuera de indice


  • Login