Programación Orientada a Objetos Temario Excepciones – Definición. – Funcionalidad – Tipos de Excepciones – API de las Excepciones – Captura de Excepciones.

Slides:



Advertisements
Presentaciones similares
Java nos ofrece System.out para escribir en pantalla, pero también tenemos System.in para leer. System.in es un objeto de una clase de java que se llama.
Advertisements

Ayudantía Pre-Actividad 5 Multimedios. Ayudantía Pre-Actividad 5 (1) creación de varias clases, y composición (2) manejo de threads (3) manejo de excepciones.
Exceptions y Assertions Introducción a la terminología Bloques: try, catch Uso de finally Bloques: try, catch, finally Categorías de Exceptions Excepciones.
Curso de java básico (scjp)
Archivos de Texto. Introducción Los archivos son una secuencia de bits que se guarda en el disco duro. La ventaja de utilizar archivos es que los datos.
EXCEPCIONES UNIDAD 5.
Programación Interactiva Manejo de Excepciones
Instrucciones y excepciones
Manejo de errores y excepciones
Programación en Java Instructor:.
MANEJO DE EXCEPCIONES EN C++
Excepciones Las excepciones son señales (en forma de objeto) que se generan en ejecución en casos de errores, para que puedan ser gestionadas en el programa.
Arquitectura CLARO-TECNOTREE CAPITULO 4: Excepciones
Capitulo 4 Excepciones.
Siguiente Excepciones Introducción. AnteriorSiguiente Definición Una excepción es un evento que ocurre durante la ejecución de un programa que desestabiliza.
Informática II Prof. Dr. Gustavo Patiño MJ
Informática II 1 Diego Fernando Serna RestrepoSemestre 2011/2.
UNIVERSIDAD LATINA (UNILA)
PROGRAMACIÓN EN JAVA Curso-taller inicial de programación en JAVA Facultad de Estadística e Informática TEMA II.
Excepciones y archivos Info 033. Exception El término Exception es la palabra corta para la frase "evento excepcional." Definition: Una excepción es un.
Control de excepciones
Manejo de excepciones en Java
INSTITUTO TECNOLOGICO DE TEHUACAN Ingeniería en sistemas computacionales Curso de apoyo a la titulación EXCEPCIONES EN JAVA Diciembre de 2008.
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Tema 6: Clases Antonio J. Sierra.
Igor Santos Grueiro. Ahora tenemos datos y datos …
Manejo de Excepciones Agustín J. González ELO329.
UNIDAD 2 CLASES Y OBJETOS. CLASE Elementos cabecera y cuerpo de la clase. Cabecera: aporta información fundamental sobre la clase en sí y constituye de.
Tema 11: Excepciones Antonio J. Sierra.
Introducción a Java (2ª parte) - excepciones, colecciones, i/o, … -
Computación II Unidad X Manejo de Excepciones. Presentación de la Unidad Objetivos: –Saber manejar situaciones inesperadas dentro de un programa –Comprender.
USO DE EXCEPCIONES EN JAVA LSC. Natalia Rodríguez Castellón.
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6. SCJP 6.0 SEMANA CUATRO CONTROL DE FLUJOS, EXCEPCIONES Y ASERSIONES.
Programación orientada a objetos Capítulo 12 Manejo de errores.
Módulo 8: Manejo de Errores y Excepciones
Manejo de excepciones en Java ELO329: Diseño y Programación Orientados a Objetos Agustín J. González.
Programación Orientada a Objetos Unidad 4 Excepciones Universidad de Chile Departamento de Ciencias de la Computación.
Unidad III Manejo de Excepciones en Java y C++
Excepciones Unidad 5.
1 Manejo de Excepciones y otros Agustín J. González ELO-329.
Programación Interactiva Manejo de Excepciones Escuela de Ingeniería de Sistemas y Computación Facultad de Ingeniería Universidad del Valle.
Java.
ELO3291 Manejo de Excepciones Lectura sugerida de texto en linea: Eckel, Bruce. Thinking About C++, 2nd Edition, Prentice-Hall, Gratis en
Programación avanzada en Java Miguel Ángel Corella 26 de Septiembre de 2005.
Manejo de errores: Excepciones en Java
Programación orientada a objetos Capítulo 12 Manejo de errores.
EXCEPCIONES. Java incorpora soporte para manejar situaciones anómalas conocidas como EXCEPCIONES que pueden ocurrir durante la ejecución de un programa.
Detalles Generales sobre Java
Tratamiento de excepciones
Manejo de errores: Excepciones en Java ELO329: Diseño y Programación Orientados a Objetos.
ELO3291 Manejo de Excepciones Agustín J. González ELO329.
Definición y cumplimiento de responsabilidades Giovanni Hernández P. Nivel 4.
MANEJO DE EXCEPCIONES. 21/11/2005 E.T.S de Ingenieros de Telecomunicacion.2 Índice ¿Qué es una excepción? Tipos de situaciones. Manejo de excepciones.
¿Qué son? – tipos – manejo - ejemplos
Prof. Víctor Aquino Urrutia
Metodología de Programación Ayudantía 4 lelagos.ublog.cl 2009.
Ada 2º Parte (variables, ámbitos, subrutinas, tipos abstractos de datos y excepciones)
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
Clases “ Es una Abstracción de un elemento del mundo real ”
Desarrollador Profesional de Juegos Programación III Unidad I Excepciones Tipos.
SCITMina | by Microsoft Bienvenidos Eduardo Daniel Tenorio Mayo Microsoft Student Partner Taller de Programación Orientada a Objetos Con C# Edgar Edel.
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
Programación orientada a objetos La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos.
Estructuras de control selectivas Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión Práctica 3.
Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 4 Versión Diseño de tipos Igualdad, representación, código,
Métodos en Java. Estructura de un programa en Java ► La relación con la vida misma la podemos ver en el siguiente comentario: Imaginemos que dos clases.
Manejo de Excepciones made by cristhian.. !!.  Errores que se pueden producir durante la ejecucion de una aplicacion y que podemos controlar o manejar.
Excepciones Diseño y manejo de excepciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 5 Versión
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Lenguaje de Programación Java
Transcripción de la presentación:

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

-¿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?

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’.

- 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”.

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.

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 …)

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 …)

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 …)

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.

 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.

 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.

(...) public static void main(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(ArithmeticException ae) { System.out.println("Error Matematico, no hay RESULTADO"); } Finally { s.cerrarConexion(); } (...)

catch(ArithmeticException e) { System.out.println(“Problemas al poder calcular"); } catch(ClassCastException ex) { System.out.println(“Error al transformar a numero"); }

catch(ClassCastException e) { System.out.println("No se puede transformar el valor"); } catch(ArrayIndexOutOfBoundsException ex) { System.out.println("has intentado dar valores FUERA DEL ARREGLO"); } catch(NullPointerException e) { System.out.println("No pueden haber NULOS"); }

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

Lanzar un error cuando un numero sea negativo. – Crear un método que reciba como parámetro un número y agregamos la clausula throws Exception 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)

Crear un método que reciba como parámetro un número y agregamos la clausula throws Exception 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 Numero es negativo"); }

Crear en main la recepcion de un numero para la luego llamar el metodo validar todo dentro de un try-catch(Exception p) package excepcionesthrow; import javax.swing.JOptionPane; public class Main { public static void main(String[] args) { try { int numero = (Integer.parseInt(JOptionPane.showInputDialog("Ingrese un numero"))); validar(numero); } catch(Exception p) { JOptionPane.showMessageDialog(null, p.getMessage()); } public static void validar (int i) throws Exception { if(i<0) { throw new Exception("El Numero es negativo"); }

Conclusiones – Clausula throws dice cual es la clase de tipo Excepcion que será lanzada – Clausula throw envia la excepción hacia la clase que la llamo – Permite personalizar tus excepciones en tiempo de ejecución

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

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.

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 – Throwable fillInStackTrace(); Llena la pila de traza de ejecución. – String getLocalizedMessage(); Crea una descripción local de este objeto. – String getMessage(); Devuelve la cadena de error del objeto. – void printStackTrace( 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). – String toString(); Devuelve una breve descripción del objeto.

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)

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; public class PersonalizarException extends Exception { public PersonalizarException(String mensaje) { super(mensaje); }

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. public class Main { public static void main(String[] args) { } public static void validar (int i) throws PersonalizarException { if(i<0) { throw new PersonalizarException("El Numero es negativo"); }

package excepciones; import javax.swing.JOptionPane; public class Main { public static void main(String[] args) { try { int numero = (Integer.parseInt(JOptionPane.showInputDialog("Ingrese un numero"))); validar(numero); } catch(PersonalizarException p) { JOptionPane.showMessageDialog(null, p.getMessage()); p.printStackTrace(); } public static void validar (int i) throws PersonalizarException { if(i<0) { throw new PersonalizarException("El Numero es negativo"); }

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

Utilizando PersonalizarException controlar mensajes personalizados: – División por Cero – Casting Invalido – Creación de arreglo con indice negativo – Acceso a arreglo fuera de indice