Módulo 11: MANEJO DE EXCEPCIONES 11-1

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Módulo 11: MANEJO DE EXCEPCIONES 11-1"

Transcripción

1 Módulo 11: MANEJO DE EXCEPCIONES 11-1

2 SUMARIO MANEJO DE EXCEPCIONES 1 SUMARIO INTRODUCCIÓN Tratamiento de Errores vs. Tratamiento de Excepciones Qué ocurre cuando se produce una excepción? JERARQUÍA DE EXCEPCIONES LANZAMIENTO DE EXCEPCIONES DE FORMA EXPLÍCITA TRATAMIENTO DE EXCEPCIONES EXCEPCIONES Y HERENCIA UN EJEMPLO APLICADO EJERCICIOS PROPUESTOS PREGUNTAS 13 C Perfecto del Amo 11-2

3 11.1. INTRODUCCIÓN Una excepción es un evento excepcional que ocurre durante la ejecución de un programa, y que interrumpe el flujo normal de las sentencias. Dentro de un programa son muchos los tipos de errores que pueden conducir a provocar una excepción, desde un desbordamiento de memoria o un disco duro estropeado hasta un disquete protegido contra escritura, un intento de dividir por cero o intentar acceder a un array fuera de sus límites. Sin embargo, si repasamos atentamente la definición anterior veremos que las excepciones se dan durante la ejecución del programa. Por tanto vemos ya que, a diferencia de lo que hemos venido haciendo hasta el momento donde corregíamos errores que se detectaban en tiempo de compilación, mediante el manejo y tratamiento de excepciones pasamos a trabajar en otro plano: el plano de ejecución de nuestros programas. Programas que, necesariamente, habrán superado la fase de compilación y estarán por tanto ya libres de este tipo de errores Tratamiento de Errores vs. Tratamiento de Excepciones Ahora que conocemos los fundamentos de la programación en Java y por ende los elementos comunes a cualquier lenguaje de programación y hemos experimentado con pequeñas aplicaciones deberíamos ser conscientes de que el trabajo del programador no finaliza desde luego con la compilación del código fuente. Un código aparentemente libre de errores está expuesto a errores indetectables hasta el momento de la ejecución. Lo ideal sería haber sido capaces de atar todos los cabos llegados a este punto, pero esto resulta cuanto menos imposible. Otros lenguajes de programación, como C por ejemplo, fundamentan el tratamiento de errores en tiempo de ejecución en la recolección a lo largo del desarrollo del programa de los códigos de retorno de las llamadas a los métodos o rutinas empleados. Estos valores son contrastados con los valores esperados y en base a los resultados de la comparación es posible tomar consciencia de qué ha fallado y decidir entonces qué acciones tomar. Esta aproximación al tratamiento de errores en tiempo de ejecución presenta dos claros inconvenientes: 1) Implica un trabajo muy minucioso, a la vez que tedioso, para el programador que tiende -tendemos- a pasar por alto demasiadas condiciones de error fruto de un exceso de confianza. 2) Por otra parte si, pese a todo, no caemos en el mencionado error nuestro código se convertirá en ilegible pues el código correspondiente a las comprobaciones de condiciones de error dificultará la lectura del código útil. Y, sin embargo, debemos detectar y tratar de corregir los errores que surjan en tiempo de ejecución. La solución adoptada en Java pasa por separar la detección de errores de su tratamiento. De esta manera, ante la aparición de un error se detendrá la ejecución normal del programa y se buscará la zona de código preparada para tratar la incidencia en cuestión, el manejador de excepciones o Exception handler. Como veremos más adelante, para dar con el manejador adecuado se realizará una búsqueda jerarquizada de tal forma que si el contexto actual de funcionamiento en un momento dado no C Perfecto del Amo 11-3

4 dispone de la información o capacidad necesaria para tratar una determinada excepción, la responsabilidad recaíga en un contexto superior continuando este proceso hasta localizar el manejador o con la finalización del programa al no estar éste preparado para el tratamiento de la excepción producida. Una de las más claras ventajas de esta estrategia es que el código de manejo de errores prácticamente desaparece: No necesitamos ya tratar el error allí donde surja por lo que el código se descarga: Sólo se escribe el tratamiento para cada uno de los posibles errores una vez, en el gestor de excepciones, con independencia del número de puntos a lo largo del programa en los que pueda aparecer. La lectura, escritura y DEPURACIÓN de los programas es resulta MUCHO MAS SENCILLA empleando el tratamiento de excepciones Qué ocurre cuando se produce una excepción? En Java, cuando se lanza una excepcion, la JVM (la máquina virtual de java) crea un objeto de la clase Exception y con ello detiene la ejecución normal del programa. La ejecución del programa se ha quedado en un estado de error, y si no se tratara de alguna forma, podría llegar a interrumpirse la ejecución del programa. Un método se dice que es capaz de tratar y captura una excepción si ha previsto con anterioridad el error que se ha producido y prevé también las operaciones a realizar para recuperar el programa del estado de error en el que ha quedado. En el momento en que es lanzada una excepción, la JVM recorre la cadena de llamadas de métodos en busca de alguno que sea capaz de tratar la clase de excepción lanzada. Es decir, comienza examinando el método donde se ha producido la excepción; si este método no es capaz de tratarla, examina el método desde el que se realizó la llamada al método donde se produjo la excepción y así sucesivamente hasta llegar al último de ellos (que en el caso de programas standalone, será el método main). En caso de que ninguno de los métodos sea capaz de tratar la excepción, la JVM muestra un mensaje de error y el programa termina. Ejemplo: int i=5, j=0; int k=i/j; class Excepcion public static void main(string argumentos[]) // División por cero /* En pantalla: java.lang.arithmeticexception: / by zero at Excepcion.main(Excepcion.java:6) Exception in thread "main" Process Exit */ Lo que ha ocurrido es que la JVM ha detectado una condición de error y ha creado un objeto de la clase java.lang.arithmeticexception. Como el método donde se ha producido la excepción, el main, no es capaz de tratarla, es tratada directamente por la JVM, mostrando el mensaje de error y dando por finalizada la ejecución del programa. C Perfecto del Amo 11-4

5 11.2. JERARQUÍA DE EXCEPCIONES Las excepciones son objetos pertenecientes a la clase Throwable o alguna de sus derivadas. La clase Throwable deriva directamente de Object. Así, Java tiene una jerarquía de clases de excepciones para cada tipo de excepción que se pueda producir. Esas clases se encuentran en el paquete java.lang, y la jerarquía que conforman se ve en la siguiente figura: Object Throwable Error Exception RuntimeException Entre las excepciones que derivan directamente de Exception, están ClassNotFoundException, DataFormatException, IOException, etc. Entre las excepciones derivadas de RuntimeException, están ArithmeticException, IllegalArgumentException, IndexOutOfBoundsException, NullPointerException, etc. Todas las excepciones, por derivar de alguna forma de Throwable, tienen métodos heredados de ella: getmessage() tostring(): Este método está definido por primera vez en la clase Object, pero se redefine en Throwable. printstacktrace fillinstacktrace Las excepciones derivadas de Error, son para el uso propio de la JVM, y no se suelen usar a la hora de programar. Las excepciones derivadas de Exception las que se usan al programar, y se pueden dividir en: Las excepciones comprobables (o explícitas) son repasadas por el compilador Java durante el proceso de compilación, de forma que si no se indica que son lanzadas de forma explícita o no se tratan, se generará un mensaje de error: clase Exception y las que derivadan directamente de ella. Las excepciones no comprobables (o implícitas) son la clase RuntimeException y sus subclases (junto con la clase Error y sus subclases). No hace falta especificar que se van a lanzar o tratarlas, para que el compilador no de error. C Perfecto del Amo 11-5

6 El programador puede podemos- también definir nuevas excepciones a través de subclases de las excepciones anteriores. Así se crean nuevas excepciones no contempladas por Java y que se ajustan de forma específica a las necesidades de nuestro programa. Las excepciones se definen como cualquier otra clase en Java; la única condición es que para que una clase efectivamente sea una excepción, tiene necesariamente que derivar de Throwable, directa o indirectamente (si lo hace a través de la subclase Exception) LANZAMIENTO DE EXCEPCIONES DE FORMA EXPLÍCITA Un método es capaz de lanzar excepciones indicándolo de forma explícita. Este lanzamiento explícito, se realiza mediante la instrucción throw. Cuando la excepción que se lanza es implícita (derivada de RuntimeException), no es necesario indicar nada en la declaración del método. Sin embargo, como decimos si la excepción es explícita (derivada de Exception), es necesario indicar en la declaración del método, que se va a producir el lanzamiento de la misma, mediante la palabra reservada throws. Ejemplo: class LanzaExcepcion public static void main(string argumentos[]) throws Exception int i=1, j=2; if (i/j<1) throw new Exception(); //Lanza la excepción else System.out.println(i/j); En pantalla: java.lang.exception at LanzaExcepcion.main(LanzaExcepcion.java:7) Exception in thread "main" Process Exit java.lang.exception es la clase del objeto excepción lanzado. LanzaExcepcion.main es el nombre del método que ha lanzado la excepción. LanzaExcepcion.java es el nombre del fichero fuente en el que se ha producido el lanzamiento de la excepción, y 7 es la línea en del fichero fuente en el que se ha lanzado la excepción. Tal como se ve en el ejemplo, como la excepción Exception es de tipo comprobable, es necesario indicar en la declaración del método que se va a lanzar una excepción de esa clase, utilizando la cláusula throws. Para lanzar la excepción, es necesario crear un objeto de la clase de la excepción que se va a lanzar (en este caso: Exception) y lanzarlo mediante la instrucción throw. Para crear el objeto excepción, se usa como sabemos el operador new. Al producirse el lanzamiento de la excepción, se deja de ejecutar el método y se devuelve el control al método que lo invocó. Si ese método no trata la excepción que le ha llegado, también deja de ejecutarse y pasa el control a su vez al método que lo llamó/invocó a él. Así, hasta llegar al origen en la cadena de llamadas de métodos, que en el caso de programas ejecutables standalone será el método main. Si ese método main no trata la excepción, se produce un error y se deja de ejecutar el programa. Eso es precisamente lo que ha ocurrido en el ejemplo anterior. C Perfecto del Amo 11-6

7 Ejemplo: (6): Recoge la excepción pero no la trata ERROR! Terminación anormal del programa (1): Llama a (6): Manda excepción a (5): Recoge la excepción pero no la trata (2): Llama a (4): Manda excepción a (3): Lanza excepción pero no la trata TRATAMIENTO DE EXCEPCIONES En Java, se pueden tratar las excepciones previstas por el programador utilizando unos mecanismos específicos, los manejadores de excepciones -exception handlers-, que se estructuran en tres bloques: El bloque try El bloque catch El bloque finally Un manejador de excepciones es una porción de código que se va a encargar de tratar las posibles excepciones que se puedan generar. Tratando las excepciones con un manejador, se evita que el lanzamiento automático de la excepción a través de la cadena de métodos llamantes, evitando que se llegue hasta el comienzo de la misma, y se interrumpa la ejecución del programa. La sintaxis general de un manejador es la siguiente: try Cuerpo del try catch (TipoExcepción1 nombrevariable) Cuerpo del catch catch (TipoExcepción2 nombrevariable) finally Cuerpo del finally Tal como se ve en la sintaxis general, un manejador de excepciones siempre va a tener un bloque try, un bloque catch asociado por lo menos, y puede o no tener un bloque finally. Lo primero que hay que hacer para que un método sea capaz de tratar una excepción, es encerrar las instrucciones susceptibles de generarla, en un bloque try. C Perfecto del Amo 11-7

8 En el momento en que se produzca la excepción, se abandona el bloque try y, por lo tanto, las instrucciones internas al try que sigan al punto donde se produjo la excepción, no serán ejecutadas. ATENCION: Cada bloque try debe tener asociado por lo menos un bloque catch. Cada uno de los bloques catch asociados será capaz de tratar un tipo u otro de excepción (no puede haber dos bloques catch que traten el mismo tipo de excepción). Y, para indicar el tipo de excepción que es capaz de tratar un bloque catch, se declara un objeto cuya clase es la clase de la excepción que se desea tratar (o una de sus superclases). Por ejemplo: class ExcepcionTratada public static void main(string argumentos[]) int i=5, j=0; try int k=i/j; //-1- System.out.println("Esto no se va a ejecutar."); catch (ArithmeticException ex) System.out.println("Ha intentado dividir por cero y conseguir un entero"); System.out.println("Fin del programa"); /* En pantalla: Ha intentado dividir por cero y conseguir un entero Fin del programa */ Cuando la JVM llega al punto 1, se da cuenta de que se está intentando dividir por cero y guardarlo en un entero. Como eso no es posible, la JVM genera un objeto de la clase ArithmeticException, que es la adecuada para tratar este tipo de excepciones. Al producirse la excepción dentro de un bloque try, la ejecución del programa se pasa al primer bloque catch. Si la clase de la excepción (en este caso, ArithmeticException) se corresponde con la clase o alguna subclase de la clase declarada en el bloque catch, se ejecuta el bloque de instrucciones contenidas en el catch y a continuación se pasa el control del programa a la primera instrucción tras los bloques try-catch. Como puede verse, también se podría haber utilizado en la declaración del bloque catch, una superclase de la clase ArithmeticException. Pero aunque esto no de errores en la compilación, no es del todo correcto. Hay que atrapar en los bloques catch, clases de excepciones que se acerquen lo más posible a las excepciones que se van a lanzar en el bloque try, ya que estas tendrán métodos que traten mejor las características concretas de su excepción. También hay que tener cuidado con el orden en el que se escriben los bloques catch. JVM va mirando la excepción que atrapa cada uno de ellos, en el orden en el que están escritos en el programa, por lo que se ejecutará el primer bloque catch que atrape una C Perfecto del Amo 11-8

9 excepción de misma clase. Si la clase que atrapa un catch es jerárquicamente superior a la clase de la excepción lanzada, y ambas están relacionadas mediante herencias, ese bloque catch se ejecutará. Por eso, para programar bien los bloques catch, hay que escribir primero los que atrapan clases de excepciones más concretas, e ir subiendo después en la jerarquía de excepciones. Ejemplo: class ExcepcionTratada public static void main(string argumentos[]) int i=5, j=0; try int k=i/j; //Sit.1 System.out.println("Esto no se va a ejecutar."); catch (Exception ex) System.out.println("Ha ocurrido una excepción"); catch (ArithmeticException ex) System.out.println("Ha intentado dividir por cero"); System.out.println("Fin del programa"); /* En pantalla: ExcepcionTratada.java:15: exception java.lang.arithmeticexception has already been caught catch (ArithmeticException ex) ^ 1 error */ /* En el caso de que fruto de la compilación no se produjeran errores la única salida posible sería: Ha ocurrido una excepción Fin del programa */ Como la clase Exception es jerárquicamente superior a la clase ArithmeticException, y su bloque catch es anterior, la JVM ejecuta el bloque catch de Exception e ignora el resto de bloques catch, aunque realmente las excepciones que traten se acerquen más a la excepción lanzada. Este código por lo tanto, no sería correcto. La clase ArithmeticException tendrá métodos más concretos que podríamos usar dentro de su bloque catch para poder manejar la excepción, pero en este caso, si se mantiene el orden de escritura de los bloques catch como están, no serviría de nada, ya que el que se ejecutaría sería siempre el catch del Exception. Después de los bloques catch puede haber un bloque finally, si es que existe. El bloque finally se utiliza para ejecutar un bloque de instrucciones sea cual sea la excepción que se produzca. Este bloque se ejecutará en cualquier caso, incluso si no se produce ninguna excepción, o después de haber sido atrapada por algún match, o la excepción producida no se ha podido atrapar en ninguno de los bloques catch previstos. En este último caso, si no hubiera ningún bloque finally, la excepción se mandaría al método llamante, pasándole también el control de flujo. Sirve para no tener que repetir código en el bloque try y en los bloques catch. C Perfecto del Amo 11-9

10 Ejemplo: class MiExcepcion extends Exception //Nota 1 int numero; MiExcepcion(int k) //Nota 2 numero=k; void mensaje() System.out.println("Ha habido una excepción de las mías. El n "+numero); class LanzaExcepcion2 static void metodo2(int k2) throws MiExcepcion //Nota 3 if(k2<1) throw new MiExcepcion(k2); //Nota 4 System.out.println("Esto ya no se ejecuta"); static void metodo1(int k1) throws MiExcepcion //Nota 5 metodo2(k1); public static void main(string args[]) int i=1,j=2; int k=i/j; try metodo1(k); //Nota 6 System.out.println("Esto ya no se ejecuta"); catch(miexcepcion me) //Nota 7 me.mensaje(); //Nota 8 finally System.out.println("Esto se ejecuta siempre"); //Nota 9 //Nota 10 System.out.println("Esto se ejecuta si la excepción ha sido tratada, o no se ha producido"); /* En pantalla: Ha habido una excepción de las mías. El número es: 0 Esto se ejecuta siempre Esto se ejecuta si la excepción ha sido tratada o no se ha producido */ Notas: 1: Declaración de una clase propia, que va a ser una excepción derivada de Exception. 2: Constructor de la excepción, al que se le pasa un int como parámetro. C Perfecto del Amo 11-10

11 3: El método es static porque será llamado por otro método que también lo es. Lanza una excepción derivada directamente de Exception, por lo que hay que indicarlo. 4: Lanzamiento de la excepción. El objeto MiExcepción se crea mediante un constructor que no es el constructor por defecto. 5: El método es static porque será llamado por otro método que también lo es. Puede recibir una excepción que no trata, por lo que la va a relanzar. Como esa excepción es derivada directamente de Exception, hay que indicar que la puede lanzar. 6: Se produce la excepción dentro del bloque try. Lo que haya a partir de esta línea dentro del bloque try, no se va a ejecutar. 7: Atrapa excepciones de clase MiExcepcion y derivadas. 8: Llama al método mensaje() del objeto excepción atrapado. 9: El bloque finally se ejecuta siempre, tanto si de ha producido y atrapado una excepción como si no. 10: Lo que queda fuera del manejador se ejecuta si la excepción ha sido tratada o no se ha producido EXCEPCIONES Y HERENCIA Como ya vimos en el tema 7 que trataba la herencia en Java, cuando una clase deriva de otra, hereda todos los atributos y los métodos de su superclase. Si alguno de los métodos heredados lanza excepciones en la superclase, también las lanzará en la clase derivada, con la particularidad de que además, sólo podrá lanzar las mismas excepciones que en la superclase. Ejemplo: class A void funcion() throws EOFException class B extends A void funcion() throws EOFException, FileNotFoundException //ERROR! Los métodos heredados en una clase derivada, pueden lanzar menos excepciones que en la definición original, pero nunca pueden lanzar excepciones nuevas que no se lanzaran en la definición original. A la vista de esto un método puede indicar en su declaración que lanza excepciones que realmente no lanza. En una clase que va a ser superclase de otras, se puede indicar en sus métodos que estos lanzan excepciones que realmente no se llegan a producir, al menos en la definición original, con miras a que en las redefiniciones de las subclases derivadas sí se puedan lanzar. En los constructores, al no heredarse, puede lanzarze todas las excepciones que se quiera. C Perfecto del Amo 11-11

12 11.6. UN EJEMPLO APLICADO import java.io.*; class LeerTeclado static BufferedReader inp = new BufferedReader(new InputStreamReader(System.in)); public static String leerlinea() String s = ""; try s=inp.readline(); catch (java.io.ioexception e) return s; // Esto es JDK 1.1y1.2. Con JDK 1.0: // char c; // try // while( (c = (char)system.in.read())!= '\n') // s += c; // // catch (java.io.ioexception e) public static String leerlinea( String mens ) // con prompt System.out.print( mens ); return leerlinea(); /* leerdoble() Devuelve NaN en caso de error */ public static double leerdoble() String s = leerlinea(); double d; try d = Double.valueOf( s ).doublevalue(); catch (java.lang.numberformatexception e) d = Double.NaN; return d; public static double leerdoble( String mens ) // con prompt System.out.print( mens ); return leerdoble(); public static void main (String[] a) double d1 = leerdoble( "Introduce un número real: " ); double d2 = leerdoble( "Introduce otro: " ); System.out.println( "La suma de ambos es: " + (d1+d2) ); EJERCICIOS PROPUESTOS 1.- Diseña e implementa una clase Fraccion que permite crear fracciones (numerador y denominador enteros), con métodos para sumar, restar, multiplicar y dividirlas. Crea una excepción FraccionException que se lance siempre que en una operación de fracción se produzca un error, a saber: Creación de una fracción con denominador cero. División de una fracción entre otra con numerador cero. Cualquier operación que incluya una fracción con denominador cero. C Perfecto del Amo 11-12

13 Haz que cada operación crítica lance esta excepción si se produce, con un mensaje indicativo del tipo de error (mensaje incluido en la excepción, no salida a pantalla!). Probar la clase PREGUNTAS Os propongo tratar de responde a las siguientes preguntas para que evalueis el grado de asimilación de los conceptor tratados en este tema. Suponiendo que la excepción con la que se está trabajando se trata de una excepción Explícita: 1. Suponer que en un bloque try, después de invocar al método que lanza la excepción, se pone otra sentencia, por ejemplo un mensaje a pantalla "Sentencia después de capturar una excepción". Si como resultado de ejecutar el método se lanza la excepción y se captura: Sale el mensaje por pantalla? 2. Y, si no se captura y se ignora la excepción, Sale el mensaje por pantalla? 3. Desde una método X se llama a un método Y que lanza una excepción Si se ignora y no se pone en la declaración del método X, cuál es el mensaje de error del compilador? 4. Sucede lo mismo si quien llama al método que lanza la excepción es el método 'main'? 5. Hacer la siguiente secuencia de llamadas: Método f3: Llama al método f2 y saca un mensaje por pantalla "Soy el método f3" Método f2: Llama al método f1 con el valor 2 como parámetro, vuelve a llamar al método f1 con el valor 1 como parámetro y saca un mensaje por pantalla "Soy el método f2" Método f1: Lanza una excepción (Parametro1Exception) si el valor del parámetro que recibe es 1, en caso contrario saca un mensaje "Soy el método f1". La excepción hay que definirla. a.- Qué pasa si nadie captura la excepción? b.- Modificar el programa para que f3 capture la excepción c.- Modificar el programa para que f2 capture la excepción d.- Indicar como conclusión: Se ejecuta el código que está después del bloque catch cuando se ha producido la excepción? Se ejecuta el código que viene después de la invocación al método que produce la excepción? Qué pasa si tanto el método f2 como el método f3 capturan la excepción? 6. Con el ejemplo anterior, comprobar mediante ejemplos que el bloque finally se ejecuta: a.- Si todo va bien y no se lanza la excepción b.- Si se lanza la excepción y se captura c.- Si se lanza la excepción pero no se captura 7. Se puede poner un bloque finally sin un bloque try? 8. Se puede poner un bloque finally sin un bloque catch? C Perfecto del Amo 11-13

TEMA 8. Excepciones en Java. Curso de Java. Manejo de Excepciones

TEMA 8. Excepciones en Java. Curso de Java. Manejo de Excepciones TEMA 8 Excepciones en Java Manejo de Excepciones Cuando un programa Java viola las restricciones semánticas del lenguaje (se produce un error), la máquina virtual Java comunica este hecho al programa mediante

Más detalles

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta Centro Asociado Palma de Mallorca Antonio Rivero Cuesta Excepciones... 5 Excepciones de uso frecuente... 8 Excepciones no comprobadas... 13 Excepciones comprobadas... 14 La clase Runtime Exception...

Más detalles

Parte I: Programación en un lenguaje orientado a objetos

Parte I: Programación en un lenguaje orientado a objetos Parte I: Programación en un lenguaje orientado a objetos 1. Introducción a los lenguajes de programación 2. Datos y expresiones 3. Estructuras algorítmicas 4. Datos compuestos 5. Modularidad 6. Tratamiento

Más detalles

Tema 4. Excepciones en Java

Tema 4. Excepciones en Java Programación en Java Tema 4. Excepciones en Java Luis Rodríguez Baena Facultad de Informática Excepciones (I) Permiten la captura de errores en tiempo de ejecución. El control de excepciones permite extraer

Más detalles

Presentación. Programación I. Programación Orientada a Objetos. :: Prof. Yeniffer Peña

Presentación. Programación I. Programación Orientada a Objetos. :: Prof. Yeniffer Peña Presentación Programación Orientada a Objetos :: Prof. Yeniffer Peña Utiliza las excepciones java. Una excepción es una condición anormal que se produce en una porción de código durante su ejecución. Es

Más detalles

Excepciones. Excepciones

Excepciones. Excepciones Excepciones FJP Unidad 12 Excepciones Una excepción es la representación de una condición de error o cualquier situación no esperada en el resultado de un método. Son instancias de subclases de la clase

Más detalles

UD 4 GESTIÓN DE ERRORES. Pedro J. Ponce de León. Versión

UD 4 GESTIÓN DE ERRORES. Pedro J. Ponce de León. Versión UD 4 GESTIÓN DE ERRORES Pedro J. Ponce de León Versión 20111005 Gestión Errores Objetivos Saber utilizar las sentencias de control de excepciones para observar, indicar y manejar excepciones, respectivamente.

Más detalles

HOJA DE EJERCICIOS 5 PROGRAMACIÓN CON EXCEPCIONES EN JAVA

HOJA DE EJERCICIOS 5 PROGRAMACIÓN CON EXCEPCIONES EN JAVA Estructura de la Información en Programación I.T.I.G., Matemáticas. Curso 2008/2009 Nombre:... Fecha: / 01 / 2009 HOJA DE EJERCICIOS 5 PROGRAMACIÓN CON EXCEPCIONES EN JAVA Esta hoja de ejercicios nos servirá

Más detalles

Resumen Manejo de Excepciones

Resumen Manejo de Excepciones Resumen Manejo de Excepciones Excepción Excepción es un cierto tipo de error o una condición anormal que se ha producido durante la ejecución de un programa. El nombre de excepción viene del hecho de que,

Más detalles

CAPÍTULO 4: EXCEPCIONES EN JAVA

CAPÍTULO 4: EXCEPCIONES EN JAVA PROGRAMACIÓN ORIENTADA A OBJETOS CON JAVA CAPÍTULO 4: EXCEPCIONES EN JAVA 1 CONTENIDOS TEMA 4: Excepciones en Java. 4.1 INTRODUCCIÓN 4.2 MANEJO DE EXCEPCIONES EN JAVA 4.3 TIPOS DE EXCEPCIONES 4.3.1 Excepciones

Más detalles

Tema 5 Corrección y Robustez Excepciones en Java

Tema 5 Corrección y Robustez Excepciones en Java Tema 5 Corrección y Robustez Excepciones en Java Parte II: Excepciones en Java Programación Orientada a Objetos Curso 2013/2014 Contenido Introducción Excepciones comprobadas Caso de estudio Tratamiento

Más detalles

Uso de excepciones en Java

Uso de excepciones en Java Uso de excepciones en Java En Java, cuando se produce un error en un método, se lanza un objeto Throwable. Cualquier método que haya llamado al método puede capturar la excepción y tomar las medidas que

Más detalles

7. Otras sentencias Sentencia break. 84 A. García-Beltrán y J.M. Arranz

7. Otras sentencias Sentencia break. 84 A. García-Beltrán y J.M. Arranz 84 A. García-Beltrán y J.M. Arranz 7. Otras sentencias Objetivos: a) Describir el funcionamiento de las otras sentencias de control (break, continue y try-catch) b) Interpretar el resultado de una secuencia

Más detalles

Java: control de excepciones

Java: control de excepciones Java: control de excepciones Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile [email protected] Introducción v Una excepción es un evento que ocurre

Más detalles

TEMA 8. Agenda. Excepciones

TEMA 8. Agenda. Excepciones TEMA 8 Excepciones V1.0 28/05/06 Manuel Pereira González Agenda 1 Introducción Mecanismo para el control y gestión de errores basado en objetos llamados Excepciones Una Excepción es una condición anormal

Más detalles

INF 473 Desarrollo de Aplicaciones en Java

INF 473 Desarrollo de Aplicaciones en Java INF 473 Desarrollo de Aplicaciones en Java Sección V Otras características de Java Prof. José Miguel Rubio [email protected] [email protected] PUCV Marzo 2008 1 Paquetes Conjunto de clases definidas

Más detalles

Programación Orientada a Objetos. Java: Excepciones

Programación Orientada a Objetos. Java: Excepciones Programación Orientada a Objetos Java: Excepciones Eduardo Mosqueira Rey LIDIA Laboratorio de Investigación y desarrollo en Inteligencia Artificial Departamento de Computación Universidade da Coruña, España

Más detalles

1. Cuántas sentencias hay en la secuencia principal del siguiente programa?

1. Cuántas sentencias hay en la secuencia principal del siguiente programa? 1. Cuántas sentencias hay en la secuencia principal del siguiente programa? public class PruebaSwitch { System.out.print ("Opcion: "); case 3: System.out.println ("miércoles "); A. 1. B. 4. C. Más de 10.

Más detalles

Si bien hay gran cantidad de excepciones, todas derivan de la clase Exception, además de las excepciones ya manejadas, se pueden crear propias.

Si bien hay gran cantidad de excepciones, todas derivan de la clase Exception, además de las excepciones ya manejadas, se pueden crear propias. Práctica No. 6. Manejo de Excepciones Java permite el manejo de excepciones, esto permite que cuando ocurra algún error en tiempo de ejecución, se pueda evitar que el programa finalice de manera incorrecta.

Más detalles

Objetivos. El alumno empleará el concepto de excepción en la programación orientada a objetos para el manejo de errores de ejecución.

Objetivos. El alumno empleará el concepto de excepción en la programación orientada a objetos para el manejo de errores de ejecución. Universidad Nacional Autónoma de México Facultad de Ingeniería PRACTICA 10 PROGRAMACIÓN ORIENTADA A OBJETOS (MANEJO DE EXCEPCIONES) Objetivos El alumno empleará el concepto de excepción en la programación

Más detalles

Programación Orientada a Objetos. Java: Excepciones

Programación Orientada a Objetos. Java: Excepciones Programación Orientada a Objetos Java: Excepciones Eduardo Mosqueira Rey Laboratorio de Investigación y desarrollo en Inteligencia Artificial Departamento de Computación Universidade da Coruña, España

Más detalles

Tema 14: Excepciones

Tema 14: Excepciones Tema 14: Excepciones 0 Excepción Definición Las Excepciones son objetos que definen el estado de la aplicación cuando se producen situaciones anómalas. Son un mecanismo usado por muchos lenguajes de programación

Más detalles

Programación Orientada a Objetos en C#.NET CAPÍTULO 8 EXCEPCIONES. Ing. Bruno López Takeyas, M.C.

Programación Orientada a Objetos en C#.NET CAPÍTULO 8 EXCEPCIONES. Ing. Bruno López Takeyas, M.C. CAPÍTULO 8 EXCEPCIONES 2 http://www.itnuevolaredo.edu.mx/takeyas 1 Preguntas detonadoras Cómo se controlan los posibles errores que ocurran durante la ejecución de una aplicación? Un programador, puede

Más detalles

Tema 4: Corrección y Robustez en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle

Tema 4: Corrección y Robustez en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle Tema 4: Corrección y Robustez en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle Contenido Asertos en C++ Mecanismo de excepciones: Declaración de excepciones Lanzar excepciones

Más detalles

Excepciones. Gonzalo Méndez - Dpto. Ingeniería de Software e Inteligencia Artificial. Excepciones

Excepciones. Gonzalo Méndez - Dpto. Ingeniería de Software e Inteligencia Artificial. Excepciones Programación Orientada a Objetos en Java Curso 2006-2007 Tema 6 Excepciones Gonzalo Méndez Pozo Dpto. de Ingeniería de Software e Inteligencia Artificial Universidad Complutense de Madrid Qué son? Excepciones

Más detalles

Unidad IV. Este tipo de codificación nos es permitido gracias a la sobrecarga, la cual se aplica a métodos y constructores.

Unidad IV. Este tipo de codificación nos es permitido gracias a la sobrecarga, la cual se aplica a métodos y constructores. Unidad IV Métodos. 4.1 Definición de un método. El polimorfismo, en programación orientada a objetos, se refiere a la posibilidad de acceder a un variado rango de funciones distintas a través del mismo

Más detalles

Ejercicios de tratamiento de errores

Ejercicios de tratamiento de errores Índice 1 Captura de excepciones (0.5 puntos)...2 2 Lanzamiento de excepciones (0.5 puntos)... 2 3 Excepciones como tipos genéricos en la aplicación filmotecas(0.5 puntos)...4 4 Excepciones anidadas en

Más detalles

Reconociendo tipos de excepciones comunes

Reconociendo tipos de excepciones comunes Reconociendo tipos de excepciones comunes Es necesario reconocer tres tipos de excepciones para el examen de OCA : excepciones de tiempo de ejecución, excepciones comprobadas, y los errores. Veremos ejemplos

Más detalles

Unidad II. Fundamentos de programación en Java. Ing. José Luis Llamas Cárdenas

Unidad II. Fundamentos de programación en Java. Ing. José Luis Llamas Cárdenas Unidad II Fundamentos de programación en Java Ing. José Luis Llamas Cárdenas En java para poder escribir se emplea el objeto System.out, t pero para leer del teclado es necesario emplear System.in Et Este

Más detalles

Programación orientada a objetos. Resumen de Temas Unidad 5: Herencia

Programación orientada a objetos. Resumen de Temas Unidad 5: Herencia Programación orientada a objetos Resumen de Temas Unidad 5: Herencia 5.1 Introducción a la Herencia La herencia es el mecanismo fundamental de relación entre clases en la orientación a objetos. Relaciona

Más detalles

Manejo de excepciones en Java. ELO329: Diseño y Programación Orientados a Objetos Agustín J. González

Manejo de excepciones en Java. ELO329: Diseño y Programación Orientados a Objetos Agustín J. González Manejo de excepciones en Java ELO329: Diseño y Programación Orientados a Objetos Agustín J. González Excepciones (o errores) Los lenguajes orientados a objeto han buscado la forma de facilitar la programación

Más detalles

Excepciones y E/S Java y Servicios Web I Master en Ingeniería Matemática

Excepciones y E/S Java y Servicios Web I Master en Ingeniería Matemática Excepciones y E/S Java y Servicios Web I Master en Ingeniería Matemática Manuel Montenegro Dpto. Sistemas Informáticos y Computación Desp. 467 (Mat) [email protected] Contenidos Generación de excepciones.

Más detalles

! Qué es la POO?! Un paradigma de programación. ! No hay paradigmas mejores ni peores! Todos tienen sus ventajas e inconvenientes

! Qué es la POO?! Un paradigma de programación. ! No hay paradigmas mejores ni peores! Todos tienen sus ventajas e inconvenientes Introducción Programación orientada a objetos Curso INEM. Programación en Java Santiago Muelas Pascual [email protected]! Qué es la POO?! Un paradigma de programación! Un paradigma es una forma de afrontar

Más detalles

TEMA 5. EXCEPCIONES EN JAVA... 1 5.1 DEFINICIÓN DE EXCEPCIONES EN PROGRAMACIÓN... 2 5.2 TIPOS DE EXCEPCIONES / ERRORES Y CÓMO TRATARLOS... 10 5.

TEMA 5. EXCEPCIONES EN JAVA... 1 5.1 DEFINICIÓN DE EXCEPCIONES EN PROGRAMACIÓN... 2 5.2 TIPOS DE EXCEPCIONES / ERRORES Y CÓMO TRATARLOS... 10 5. TEMA 5. EXCEPCIONES EN JAVA... 1 5.1 DEFINICIÓN DE EXCEPCIONES EN PROGRAMACIÓN... 2 5.2 TIPOS DE EXCEPCIONES / ERRORES Y CÓMO TRATARLOS... 10 5.3 TRABAJANDO CON EXCEPCIONES: DECLARACIÓN, CONSTRUCCIÓN,

Más detalles

Flujos (streams) Programación. Licenciatura Lingüística y Nuevas Tecnologias Nadjet Bouayad-Agha

Flujos (streams) Programación. Licenciatura Lingüística y Nuevas Tecnologias Nadjet Bouayad-Agha Flujos (streams) Programación Nadjet Bouayad-Agha Licenciatura Lingüística y Nuevas Tecnologias 2007 Agenda Java e argumentos de entrada: args.zip Como leer e escribir datos de/a los flujos estándares.

Más detalles

TECNICAS DE PROGRAMACION Universidad Católica Los Angeles de Chimbote MODIFICADORES DE ACCESO A LOS MIEMBROS DE UNA CLASE

TECNICAS DE PROGRAMACION Universidad Católica Los Angeles de Chimbote MODIFICADORES DE ACCESO A LOS MIEMBROS DE UNA CLASE MODIFICADORES DE ACCESO A LOS MIEMBROS DE UNA CLASE Los modificadores de acceso, como su nombre indica, determinan desde qué clases se puede acceder a un determinado elemento. En Java tenemos 4 tipos:

Más detalles

Práctica #5: Uso de control de flujo, Excepciones y Lectura Estándar

Práctica #5: Uso de control de flujo, Excepciones y Lectura Estándar Práctica #5: Uso de control de flujo, Excepciones y Lectura Estándar Introducción El alumno creará cuatro programas en java que manejen control de flujo mediante las sentencias de bucle while y do/while,

Más detalles

Introducción - por qué usarlas?(1)

Introducción - por qué usarlas?(1) Excepciones en Java Introducción - por qué usarlas?(1) En el mundo de la programación hay algo que siempre ocurre: los errores en los programas. Pero qué sucede realmente después de que ha ocurrido el

Más detalles

INTRODUCCION A LA PROGRAMACION EN JAVA

INTRODUCCION A LA PROGRAMACION EN JAVA Departament d Arquitectura de Computadors INTRODUCCION A LA PROGRAMACION EN JAVA Índice Paso de parámetros en tiempo de ejecución Métodos static Atributos static Try-catch-finally Throws/throw 2 Paso de

Más detalles

Examen Teórico Convocatoria de Junio de 2012

Examen Teórico Convocatoria de Junio de 2012 Examen Teórico Convocatoria de Junio de 2012 Nombre: DNI: Titulación: 1. Sobre el control de errores en Java: a) El siguiente método contiene un error de compilación debido al uso de excepciones. Explica

Más detalles

Introducción a Java. Introducción a Java. Programación I

Introducción a Java. Introducción a Java. Programación I Introducción a Java Introducción a Java Programación I Como Funciona Tipos de Datos TIPO TAMAÑO RANGO byte 8 bits Valores numéricos de 128 a 127 short 16 bits Valores numéricos de 32.768 a 32.767 int 32

Más detalles

Qué es Java? Un lenguaje de programación Un entorno de desarrollo Un entorno de aplicación Un entorno de despliegue Es similar en sintaxis de C + +.

Qué es Java? Un lenguaje de programación Un entorno de desarrollo Un entorno de aplicación Un entorno de despliegue Es similar en sintaxis de C + +. APUNTES DE JAVA Agenda Bienvenida Conociendo Java La Maquina Virtual Descargar e instalar el compilador El entorno de trabajo El paradigma de la programación orientada a objetos Qué es Java? Un lenguaje

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS 10/02/2009. Examen de Java. Nombre: DNI: Titulación:

PROGRAMACIÓN ORIENTADA A OBJETOS 10/02/2009. Examen de Java. Nombre: DNI: Titulación: Examen de Java Nombre: DNI: Titulación: 1. Cómo podemos compilar desde la línea de comandos la clase Java A que utiliza una librería empaquetada bd.jar? 2. Indica si es correcto el siguiente código. Justifica

Más detalles

Excepciones en Programación Orientada a Objetos

Excepciones en Programación Orientada a Objetos 1 Excepciones en Programación Orientada a Objetos 2013 Transversal Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 2 Ítems 1. Manejo de excepciones 2. Capturar excepciones

Más detalles

Introducción a Java 10/02/2011. Tokens. Juan Manuel Fernández Peña Curso Rev Tokens. Tokens

Introducción a Java 10/02/2011. Tokens. Juan Manuel Fernández Peña Curso Rev Tokens. Tokens Introducción a Java Juan Manuel Fernández Peña Curso 2005. Rev 2011 Comentarios: //comentario /* comentario fin de comentario */ /** comentario para javadoc fin */ Palabras reservadas: (como ejemplo) abstract,

Más detalles

Clases y herencia. FJP Unidad 8. Diseño de clases

Clases y herencia. FJP Unidad 8. Diseño de clases Clases y herencia FJP Unidad 8 Encapsulamiento Diseño de clases El encapsulamiento provee protección de atributos y métodos definidos en una clase de forma tal que comportamiento de objetos de una clase

Más detalles

Programación orientada a objetos

Programación orientada a objetos Repaso Programación orientada a objetos Curso INEM. Programación en Java Santiago Muelas Pascual [email protected]! Herencia! Superclase/subclase! super! Modificador protected! Redefinicion de métodos!

Más detalles

Estructura de datos y Programación

Estructura de datos y Programación Estructura de datos y Programación Tema: Conceptos Básicos- Estructuras de control - Arreglos Ing. Analia Méndez Ing. Raquel Zarco Año: 2012 ELEMENTOS DE UN PROGRAMA EN JAVA El programa Java consta de

Más detalles

Java: control de excepciones

Java: control de excepciones Introducción Java: control de excepciones Una excepción es un evento que ocurre durante la ejecución de un programa, y que interrumpe su flujo de control normal. Normalmente se encuentran asociadas a errores.

Más detalles

EXCEPCIONES EN JAVA. Las sentencias que tratan las excepciones son try y catch. La sintaxis es:

EXCEPCIONES EN JAVA. Las sentencias que tratan las excepciones son try y catch. La sintaxis es: EXCEPCIONES EN JAVA Uno de los problemas más importantes al escribir aplicaciones es el tratamiento de los errores. Errores no previstos que distorsionan la ejecución del programa. Las excepciones de Java

Más detalles

Guía - Taller # 2 (JAVA)

Guía - Taller # 2 (JAVA) CEET - Distrito Capital Programa de Formación: ADSI 150752 TRIMESTRE VI Conocimiento de Conocimiento: Aplicar diversos estilos de Programación usando herramientas para Desarrollo Web Instructor: Ing. Espec.

Más detalles

Un breve resumen del lenguaje Java

Un breve resumen del lenguaje Java Un breve resumen del lenguaje Java 1.1. Órdenes para trabajar con código Java desde una máquina Unix.............. 1 1.2. Comentarios......................................... 2 1.3. Declaración de datos

Más detalles

Unidad V. Ya veremos qué poner en "algunas_palabras" y "algo_más", por ahora sigamos un poco más.

Unidad V. Ya veremos qué poner en algunas_palabras y algo_más, por ahora sigamos un poco más. Implementación Orientada a Objetos. Unidad V 5.1 Estructura de una clase. Una clase consiste en: algunas_palabras class nombre_de_la_clase [algo_más] { [lista_de_atributos] [lista_de_métodos] Lo que está

Más detalles

Programación Orientada a Objetos. Resumen de Temas Unidad 3: Constructores y destructores

Programación Orientada a Objetos. Resumen de Temas Unidad 3: Constructores y destructores Programación Orientada a Objetos Resumen de Temas Unidad 3: Constructores y destructores 3.1 Conceptos de métodos constructor y destructor Java inicializa siempre con valores por defecto las variables

Más detalles

Excepciones e hilos. Acceso a la red - Ejercicios

Excepciones e hilos. Acceso a la red - Ejercicios Excepciones e hilos. Acceso a la red - Ejercicios Índice 1 Captura de excepciones (*)... 2 2 Lanzamiento de excepciones...2 3 Chat para el móvil... 3 1. Captura de excepciones (*) En el proyecto java-excepciones

Más detalles

MANEJO DE EXCEPCIONES en C++ Dr. Oldemar Rodríguez R. Escuela de Informática Universidad Nacional

MANEJO DE EXCEPCIONES en C++ Dr. Oldemar Rodríguez R. Escuela de Informática Universidad Nacional MANEJO DE EXCEPCIONES en C++ Dr. Oldemar Rodríguez R. Escuela de Informática Universidad Nacional C++ posee un mecanismo de gestión de errores incorporado que se denomina manejo de excepciones. La utilización

Más detalles

HOJA DE EJERCICIOS 3 HERENCIA ENTRE CLASES Y POLIMORFISMO DE MÉTODOS

HOJA DE EJERCICIOS 3 HERENCIA ENTRE CLASES Y POLIMORFISMO DE MÉTODOS Estructura de la Información en Programación I.T.I.G., Matemáticas. Curso 2009/2010 Nombre:... Fecha: / 11 / 2009 HOJA DE EJERCICIOS 3 HERENCIA ENTRE CLASES Y POLIMORFISMO DE MÉTODOS Esta hoja de ejercicios

Más detalles

- Compilar y ejecutar programas en Java - Estructura básica de una clase - El comando javac - El comando java - Introducción al IDE de desarrollo

- Compilar y ejecutar programas en Java - Estructura básica de una clase - El comando javac - El comando java - Introducción al IDE de desarrollo - Introdución a Java - Breve historia de Java - Características del lenguaje Java - Estructura del JDK 1.6 - Documentación del API (JavaDoc) - Instalar y configurar el ambiente de desarrollo - La variable

Más detalles

FUNCIONES PHP: DECLARACIÓN Y LLAMADAS. PARÁMETROS, RETURN. EJERCICIOS EJEMPLOS RESUELTOS. (CU00827B)

FUNCIONES PHP: DECLARACIÓN Y LLAMADAS. PARÁMETROS, RETURN. EJERCICIOS EJEMPLOS RESUELTOS. (CU00827B) APRENDERAPROGRAMARCOM FUNCIONES PHP: DECLARACIÓN Y LLAMADAS PARÁMETROS, RETURN EJERCICIOS EJEMPLOS RESUELTOS (CU00827B) Sección: Cursos Categoría: Tutorial básico del programador web: PHP desde cero Fecha

Más detalles

FACULTAD DE INGENIERÍA

FACULTAD DE INGENIERÍA NOMBRE DEL PROFESOR: Ing. Héctor Manuel Quej Cosgaya NOMBRE DE LA PRÁCTICA: Herencia PRÁCTICA NÚM. [ 4 ] LABORATORIO: MATERIA: UNIDAD: TIEMPO: Centro de Ingeniería Computacional Lenguaje de Programación

Más detalles

Definición. Mónica E. García García Feb 07

Definición. Mónica E. García García Feb 07 Tema 11: Herencia 0 Definición Cuando inicialmente se modelan dos cosas y se tienen datos duplicados y además pudiera darse que el número de métodos también es similar así como la implementación, se requiere

Más detalles

Unidad Didáctica 3. Tipos genéricos. Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos

Unidad Didáctica 3. Tipos genéricos. Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 3 Tipos genéricos Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Definición de tipo genérico Hablamos de un tipo genérico cuando el tipo en cuestión depende

Más detalles

Examen de Prácticas de Programación Ingeniería Informática

Examen de Prácticas de Programación Ingeniería Informática Examen de Prácticas de Programación Ingeniería Informática Junio 2007 1) (2 puntos) Escribir en Java la implementación de los métodos public void escribematrizenfichero(double[][] m, String nomfich)...

Más detalles

Curso de Java Introducción a la Programación I

Curso de Java Introducción a la Programación I Curso de Java Introducción a la Programación I Jaime Fernández Martín Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Sintaxis Java 2 Salida de datos 3 Entrada de datos Índice 1 Sintaxis Java

Más detalles

abril de 2017 Desarrollo de aplicaciones en Java Tipos de datos primitivos Tipos de datos Elementos de aplicaciones simples

abril de 2017 Desarrollo de aplicaciones en Java Tipos de datos primitivos Tipos de datos Elementos de aplicaciones simples Desarrollo de aplicaciones en Java Generación de código fuente Compilación Ejecución Elementos de aplicaciones simples EII147-01-02 Introducción a las tecnologías de información Escuela de Ingeniería Industrial

Más detalles

Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1

Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1 Prologo Agradecimientos Nota de los autores Índice general I III V VII 1 Problemas, algoritmos y programas 1 1.1 Programas y la actividad de la programación.................... 4 1.2 Lenguajes y modelos

Más detalles

Java Avanzado Facultad de Ingeniería. Escuela de computación.

Java Avanzado Facultad de Ingeniería. Escuela de computación. 2 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 5 3 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo de sus prácticas

Más detalles

INICIACIÓN A LA PROGRAMACIÓN LENGUAJE JAVA con BlueJ

INICIACIÓN A LA PROGRAMACIÓN LENGUAJE JAVA con BlueJ INICIACIÓN A LA PROGRAMACIÓN LENGUAJE JAVA con BlueJ Tema 3 Clases y Objetos Tema 4 Comunicación entre objetos. Algoritmos Tema 5 Herencia y abstracción de datos Tema 6 Diseño de clases TEMA 5: Herencia

Más detalles

GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C)

GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C) APRENDERAPROGRAMAR.COM GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado I

Más detalles

JAVA 1. Introducción

JAVA 1. Introducción Diseño de Interfaces de Usuario JAVA. Introducción. Características Portabilidad Interpretado (bytecodes) Uso de Máquina Virtual Java (JVM) Orientado a Objetos Jerarquía de clases Extensible (packages)

Más detalles

JAVA: Excepciones. Errores

JAVA: Excepciones. Errores JAVA: Excepciones Lenguajes de Programación - Java: Excepciones 1 Errores Qué ocurre si un programa está usando un archivo en CD y el usuario lo extrae antes de tiempo? Qué ocurre si el usuario de un programa

Más detalles

PROGRAMACIÓN EN JAVA

PROGRAMACIÓN EN JAVA 1. INTRODUCCIÓN A LA PROGRAMACIÓN 1.1. Datos, algoritmos y programas 1.1.1. Definición de algoritmo 1.1.2. Datos 1.1.3. Características de un programa 1.2. Paradigmas de programación 1.2.1. Programación

Más detalles

Metodología y Tecnología de la Programación

Metodología y Tecnología de la Programación Tema 4. Abstracción procedimental y de datos 1. Cuál es el error del siguiente programa? import java.util.scanner; class Respuesta{ static Scanner leer=new Scanner(System.in); int valor = lectura(); System.out.println(valor);

Más detalles

16. Herencia Definición de herencia. 168 A. García-Beltrán y J.M. Arranz

16. Herencia Definición de herencia. 168 A. García-Beltrán y J.M. Arranz 168 A. García-Beltrán y J.M. Arranz 16. Herencia Objetivos: a) Definir el concepto de herencia entre clases b) Interpretar el código fuente de una aplicación Java donde aparecen clases relacionadas mediante

Más detalles

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos

Más detalles

Estructuras de control selectivas

Estructuras de control selectivas Práctica 3 Estructuras de control selectivas Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 2.0.2 Concepto de sentencia y estructura de control El cuerpo de los métodos

Más detalles

INDICE Prologo 1 Recorrido rápido de java 2 Clases y objetos 3 Extensión de clases

INDICE Prologo 1 Recorrido rápido de java 2 Clases y objetos 3 Extensión de clases INDICE Prologo XIII 1 Recorrido rápido de java 1.1. Para empezar 1 1.2. Variables 2 1.3. Comentarios en el condigo 1.4. Constantes con nombre 5 1.4.1. Caracteres Unicode 6 1.5. Flujo de control 7 1.6.

Más detalles

Principios de Computadoras II

Principios de Computadoras II Departamento de Ingeniería Electrónica y Computadoras Ing. Ricardo Coppo [email protected] Qué es un Objeto? Un objeto es una instancia de una clase Las clases actuán como modelos que permiten la creación

Más detalles

Java. Introducción a la Programación Orientada a Objetos

Java. Introducción a la Programación Orientada a Objetos Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código independiente de la arquitectura de la computadora

Más detalles

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice

Más detalles

FACULTAD DE INGENIERÍA

FACULTAD DE INGENIERÍA NOMBRE DEL PROFESOR: Ing. Héctor Manuel Quej Cosgaya NOMBRE DE LA PRÁCTICA: Estructuras de decisión PRÁCTICA NÚM. [ 5 ] LABORATORIO: MATERIA: UNIDAD: TIEMPO: Centro de Ingeniería Computacional Lenguaje

Más detalles

Construcciones del Lenguaje Java

Construcciones del Lenguaje Java Construcciones del Lenguaje Java Autor: Juan Alberto López Cavallotti Versión de Java: 5 / 6 Comentarios Comentario de Línea Comentario Multilínea //Esto es un comentario. /* Esto comenta varias lineas.

Más detalles

Métodos CON valor de retorno

Métodos CON valor de retorno Métodos Estáticos C# Fundamentos de Programación. Objetivos del tema: Qué es un método? Qué métodos conoces? Métodos que NO devuelven valor. Métodos que SI devuelven un valor. Paso de parámetros. Variables

Más detalles

Arquitecturas cliente/servidor

Arquitecturas cliente/servidor Arquitecturas cliente/servidor Creación de Sockets Cliente Servidor 1 Creación de Sockets Cliente/Servidor Sockets en TCP Concepto de Hilos Definición de DAEMON Sockets en UDP 2 THREADS 3 Qué es un thread?

Más detalles