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.

Slides:



Advertisements
Presentaciones similares
FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE (SL-110) CAPÍTULO 13 Ing. Ronald Criollo.
Advertisements

Complejidad Computacional
Complejidad Computacional
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.
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.
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.
Archivos Binarios Usando Serializable. Introducción Utilizar archivos binarios nos ayuda a guardar y leer más fácilmente los datos de archivos. Pero como.
EXCEPCIONES UNIDAD 5.
Programación Interactiva Manejo de Excepciones
Manejo de errores y excepciones
Programación en Java Instructor:.
Archivos Implementar un método que lea una secuencia de números enteros de un archivo y compute la cantidad de elementos leídos.
MANEJO DE EXCEPCIONES EN C++
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
Genéricos en Java Jaime Ramírez, Ángel Lucas González
UNIVERSIDAD LATINA (UNILA)
Archivos Contenido: Archivos de Texto Archivos de Acceso Aleatorio
Método en Java.
Manejo de excepciones en Java
Recursión Se dice que un método es recursivo si forma parte de sí mismo o se define en función de sí mismo. La recursión es un medio particularmente poderoso.
Tema 7: Polimorfismo Antonio J. Sierra. Índice Introducción. Sobrecarga de métodos. Objetos como parámetros. Paso de argumentos. Devolución de objetos.
INSTITUTO TECNOLOGICO DE TEHUACAN Ingeniería en sistemas computacionales Curso de apoyo a la titulación EXCEPCIONES EN JAVA Diciembre de 2008.
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6. SCJP 6.0 SEMANA CINCO CONSOLE.
Tema 6: Clases Antonio J. Sierra.
Colecciones.
Igor Santos Grueiro. Ahora tenemos datos y datos …
1 Streams en Java Agustín J. González ELO Generalidades Un Stream es simplemente una fuente o destino de bytes. Los streams más comunes son los.
1 TEMA 5. Seguridad en Java 1.Introducción a los Controladores de Seguridad 2.Decidir qué Métodos Sobreescribir del SecurityManager 3.Escribir un Controlador.
Archivos y Búsqueda Secuencial
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.
Clase Teórica No. 4 Programación IV
Suponiendo que además en la clase U hay: import java.util.*; class U{ static Scanner teclado = new Scanner(System.in); static public int readInt(String.
7. Interfaces Herencia múltiple Interfaces Comparable y Comparator
Repaso/resumen 1.lectura/escritura y asignación 2.funciones 3.selección de instrucciones (if-else) 4.repetición de instrucciones (while) 5.recursión 6.operadores/instrucciones.
3.  Recursividad.
1 Persistencia en Java Agustín J. González ELO-329.
Capítulo 1 “Elementos de Programación”
Tema 11: Excepciones Antonio J. Sierra.
Introducción a Java (2ª parte) - excepciones, colecciones, i/o, … -
Programación I :: Prof. Yeniffer Peña Programación I Interface Gráfica de Usuario Presentación.
Capítulo 5 - b: Hilos. 4.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th edition, Jan 23, 2005 Ejemplo de hilos: un applet Un.
Programación Orientada a Objetos
Entrada / Salida. Java adopta de Unix el concepto de stream Un stream es un flujo de datos (secuencia de bytes) que va de una fuente a un destino. Desde.
Programación Orientada a Objetos Temario Excepciones – Definición. – Funcionalidad – Tipos de Excepciones – API de las Excepciones – Captura de Excepciones.
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.
Módulo 8: Manejo de Errores y Excepciones
Programación Orientada a Objetos Unidad 4 Excepciones Universidad de Chile Departamento de Ciencias de la Computación.
ING.CIP.IVAN PETRLIK AZABACHE. SEMANA 4 MANEJO DE EXCEPCIONES Y ERRORES.
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 avanzada en Java Miguel Ángel Corella 26 de Septiembre de 2005.
Primeros pasos en java. Definición de las librerías import java.applet.Applet; //cuando se crea un applet import java.awt.*; //importa todos los paquetes.
Tratamiento de excepciones
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
Metodología de Programación Ayudantía 4 lelagos.ublog.cl 2009.
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
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,
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 Orientada a Objetos
Transcripción de la presentación:

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 evento, que ocurre durante la ejecución de un programa, que interrumpe el flujo normal de las instrucciones del programa

How to throw exceptions Antes de que puedas atrapar una excepción, debes saber como lanzar excepciones. Java provee de varias clases de excepciones.

Prueba este código import java.util.EmptyStackException; public class TestProgram { public static void main(String[] args) { int size=0; if (size == 0) { //lanzamos una excepcion - error al programa throw new EmptyStackException(); } System.out.println("que paso?"); }

Handle Exceptions – Manejo excepciones El primer paso para poder manejar el código que genera una excepción es envolver el código con try – catch – finally try { code } catch and finally blocks...

Ejemplo

Una excepción en un objeto… de tipo Exception

El control de flujo en el bloque try/catch Cuando el intento es exitoso Cuando el intento es fallido

Finally Hay veces en las que se deseas estar seguro que un bloque de código se ejecute, se produzcan o no excepciones. Se puede hacer esto añadiendo un bloque finally después del último catch.

Si Exception es un objeto, podemos extenderlo public class MyException extends Exception { public MyException(String message) { super(message); }

Ahora prueba este código //le avisamos al compilador que este método puede lanzar un MyException public static void main(String[] args) throws MyException { int size=0; if (size == 0) throw new MyException("Esto es mi error"); }

Archivos Al igual que con las excepciones java provee un conjunto de objetos para manejar archivos. File archivo = new File ("archivo.txt"); FileReader fr = new FileReader (archivo); BufferedReader br = new BufferedReader(fr);... String linea = br.readLine();

Algo extremadamente útil Java provee clases para guardar objetos en archivos. Objetos de objetos, etc. Por lo que podemos guardar en un archivo la información que tengan nuestros objetos y posteriormente recuperarla. Útil para cuando deban programar un guardar/guardar como

Paso 1 – Crea la siguiente clase //Java nos dice que para poder guardar un objeto //debe implementar Serializable class Persona implements Serializable { String nombre; int edad; public Persona(String nombre, int edad) { this.nombre=nombre; this.edad =edad; }

Paso 2 – Crea un package para almacenar archivos Crea un package files, que contenga un archivo de nombre guardar

Paso 3 – Crear la siguiente clase public class ObjectHandler { public static void saveObject(String filename, Object o) throws FileNotFoundException, IOException { FileOutputStream saveFile = new FileOutputStream(filename); ObjectOutputStream save = new ObjectOutputStream(saveFile); save.writeObject(o); save.close(); }

Paso 4 – Guardar nuestro objeto public static void main(String[] args) { Persona p1 = new Persona("Juan", 15); try { ObjectHandler.saveObject("src/files/guardar", p1); } catch (FileNotFoundException ex) { System.out.println("Archivo no encontrado"); } catch (IOException ex) { System.out.println("Error de lectura/escritura"); }

¿Para leer un objeto? Agreguemos otro método a nuestra clase ObjectHandler

Probando el método

Recursividad

Comencemos con un ejemplo GNU = GNU no es Unix GNU GNU no es Unix GNU no es Unix no es Unix GNU no es Unix no es Unix No es Unix … infinitamente

El factorial n! = n x (n-1) x (n-2) x … x 1 Ejemplo: 3! = 3 x 2 x 1 = 6 5! = 5 x 4 x 3 x 2 x 1 = ! = 10 x 9 x 8 x 7 x 6 x 5! =

Recursividad es resolver un problema grande, resolviendo pequeñas partes del mismo problema 10! = 10 * 9! 9! = 9 * 8! 8! = 8 * 7! 7! = 7 * 6! 6! = 6 * 5! 5! = 5 * 4! 4! = 4 * 3! 3! = 3 * 2! 2! = 2 * 1! 1! = 1

En resumen cada n! Es el producto de n*(n-1)! Caso recursivo Caso base Una definición recursiva se compone de un caso recursivo y de uno o más casos base (que no se escriben en términos de si mismo).

Resolviendo Fact(4): Fact(4) = 4*Fact(3) Fact(3) = 3*Fact(2) Fact(2) = 2 * Fact(1) Fact(1) = 1 Fact(2) = 2*1, Fact(3) = 3*2, Fact(4) = 4*6

Entendiendo la matemática, la programación es lo más sencillo public static int factorial (int x) { if (x > 1) { //recursive case return factorial(x-1) * x; } else /*base case*/ return 1; }

Esto luce como

Calcule el n-esimo valor de la serie de fibonacci utilizando recursividad En términos matemáticos la serie de fibonacci se define como sigue: Caso recursivo: Fn = F n-1+ F n-2, Casos base : F 0= 0, F 1= 1 ¿ Fibonnaci(6) ?

Ahora programe public static int fibonacci(int number){ }