Sei sulla pagina 1di 26

MANEJO DE EXCEPCIONES Y GUI EN JAVA CON NET BEANS

CONTENIDO

1. Excepciones 1.1. La clase excepcion1. 1.2. La clase Teclado 1.3. La clase excepcin2. 2. Creacin de ventanas 2.1. La clase Marco1. 2.2. La clase Marco2 2.3. La claseMarco2Main. 2.4. La Clase Marco3 2.5. La Clase Marco4 2.6. La Clase Marco4Main 3. Paneles y objetos de disposicin 3.1. La clase Boton. 3.2. La clase Panel1. 4. Investigacin. 5. Programa aplicando las tres clases flowlayout, borderlayout y gridlayout 5.1. Cdigo fuente 5.2. Compilacin y ejecucin.

1. EXCEPCIONES 1.1. LA CLASE EXCEPCION1. CODIGO FUENTE

OPERACIN DELCODIGO En la lnea 2 por medio de la palabra reservada importa se hace un llamado (importar) al paquete predeterminado de java java.i.o exactamente al paquete de excepciones IOExcepction. En la lnea 4 se declara la clase Excepcion1. En las lneas 5 se establece el mtodo general en el cual adems se determina por medio de la palabra reservada Throws que contendr una excepcin del tipo IOException. En la lnea 7 se establece el inicio del mtodo con la palabra reservada do seguida en la lnea 8 de la palabra reservada try cuya funcin es inicializar la captura de la excepcin y as mismo determinar que el cdigo que aparece despus de ella es aquel en el que se puede presentar el error que genere al excepcin En la lnea 9 muestra por pantalla la palabra Valor

En la lnea 10 se establece la variable valor de tipo entero a la cual se asignara valor segn lo ingresado a travs del teclado lo cual es tomado por el programa mediante el mtodo LeerInt de la clase Teclado. En la lnea 11 se establece una variable Auxiliar de tipo float la cual toma como valor el resultado de dividir 8 entre el numero almacenad en la variable Valor. En la linea 12 muestra por pantalla el valor que toma la variable Auxiliar. En la lnea 14 mediante la palabra reservada catch se indica el tipo de excepcin que se presenta en este caso es del tipo ArithmeticException que es aquella que se genera cuando se ocurre una operacin aritmtica errnea; y se determina (lnea 15) que cuando ocurra muestre por pantalla la frase Divisin por Cero En la lnea 17 muestra por pantalla la frase Despus del Catch En la lnea 19 mediante las palabras reservadas while y true se establece que mientras se sigan dando las condiciones (en este caso se siga digitando algn dato por teclado) se siga aplicando el cdigo establecido a partir de la palabra reservada try, lo cual evita que se tenga que volver a correr el programa cada vez que se digite un dato por teclado.

EJECUSION

NOTA: los nmeros que aparecen despus de la palabra valor fueron ingresados por teclado manualmente despus de correr el programa.

1.2.

LA CLASE TECLADO CODIGO FUENTE

OPERACIN DEL CODIGO En las lneas 2 y 3 por medio de la palabra reservada import se hace un llamado (importar) al paquete predeterminado de java java.i.o paquete de entrada y salida y java.until, paquete de manejo de utilidades. En la lnea 4 se declara la clase Teclado

En la lnea 6 se instancia un objeto de la clase BufferedReader del paquete java.i.o la cual se utiliza para el manejo de texto, y que a su vez por medio de una instancia de la clase del mismo paquete InputStreamReader lee y almacena texto de la pantalla. En la lnea 8 se establece un constructor sin argumentos. En las lneas 10 a 17 se establece el mtodo LeerInt, el cual contiene una excepcin del tipo IOException; y adems: En la lnea 11 establece mediante la palabra reservada While (true) que mientras se cumpla la condicin se ejecute el cdigo del mtodo LeerInt. En la lnea 12 establece una variable de tipo String S que tomara el valor de los caracteres del objeto instanciado de la clase BufferedReader mediante el mtodo readLine () En la lnea 13 mediante la palabra reservada try se inicializa la captura de la excepcin. En la lnea 14 se pide que retorne el resultado de convertir en nmero entero el valor en String de la variable S lo cual se hace mediante el mtodo Integer.parseInt() En las lneas 16 y 17 mediante la palabra reservada catch se indica el tipo de excepcin que se presenta en este caso es del tipo NumberFormatException, la cual se produce cuando no se puede obtener un numero de un dato String; y se determina (lnea 17) que cuando ocurra muestre por pantalla la frase "Error en el numero, prueba de nuevo." En las lneas 21 a 28 se establece el mtodo LeerChar, el cual contiene una excepcin del tipo IOException; y adems: En la lnea 22 establece mediante las palabras reservadas While (true) mientras se cumpla la condicin se ejecute el cdigo del mtodo LeerInt. que

En la lnea 23 establece una variable de tipo String S que tomara el valor de los caracteres del objeto instanciado de la clase BufferedReader mediante el mtodo readLine () En la lnea 24 mediante la palabra reservada try se inicializa la captura de la excepcin.

En la lnea 25 se pide que retorne el resultado de quitar los espacios de principio y fin y convertir en un array el valor en String de la variable S lo cual se hace mediante el mtodo trim () y adems que tome nicamente el valor del array contenido en el ndice 0 a travs del mtodo charAt (), es decir que solo tomara el primer carcter. En las lneas 27 y 28 mediante la palabra reservada catch se indica el tipo de excepcin que se presenta en este caso es del tipo StringIndexOutOfBoundsException , la cual se produce se trata de acceder a un ndice fuera de la cadena; y se determina (lnea 28) que cuando ocurra muestre por pantalla la frase "Lnea vaca, prueba de nuevo." En las lneas 32 a 39 se establece el mtodo leerDouble (), el cual contiene una excepcin del tipo IOException; y adems: En la lnea 33 establece mediante las palabras reservadas While (true) mientras se cumpla la condicin se ejecute el cdigo del mtodo LeerInt. que

En la lnea 34 establece una variable de tipo String S que tomara el valor de los caracteres del objeto instanciado de la clase BufferedReader mediante el mtodo readLine () En la lnea 35 mediante la palabra reservada try se inicializa la captura de la excepcin. En la lnea 36 se pide que retorne el resultado de convertir en un objeto Double el de la variable S una vez aplicado el mtodo trim () que quita espacios inicial y final de la cadena, esto mediante el mtodo valueOf () y adems que retorne el valor en double de dicho objeto mediante el mtodo doubleValue (). En las lneas 38 y 39 mediante la palabra reservada catch se indica el tipo de excepcin que se presenta en este caso es del tipo NumberFormatException la cual se produce cuando no se puede obtener un numero de un dato String; y se determina (lnea 39) que cuando ocurra muestre por pantalla la frase " Error en el numero, prueba de nuevo...

1.3.

LA CLASE EXCEPCIN2. CODIGO FUENTE

OPERACIN DELCODIGO En la lnea 3 por medio de la palabra reservada import se hace un llamado (importar) al paquete predeterminado de java java.i.o exactamente al paquete de excepciones IOExcepction. En la lnea 5 se declara la clase Excepcion2. En las lneas 6 se establece el mtodo general en el cual adems se determina por medio de la palabra reservada Throws que contendr una excepcin del tipo IOException. En la lnea 7 se crea una variable de tipo int Posicin con valor inicial de 0 En la lnea 8 se establece el inicio del mtodo con la palabra reservada do seguida en la lnea 9 de la palabra reservada try cuya funcin es inicializar la captura de la

excepcin y as mismo determinar que el cdigo que aparece despus de ella es aquel en el que se puede presentar el error que genere al excepcin. En la lnea 10 se declara una array elementos. Valores con datos de tipo Float con 6

En la lnea 11 muestra por pantalla la palabra Posicin En la lnea 12 se asigna a la variable posicionPosicion el valor segn lo ingresado a travs del teclado lo cual es tomado por el programa mediante el mtodo LeerInt de la clase Teclado. En la lnea 13 muestra por pantalla la palabra Valor. En la lnea 14 se establece la variable valor de tipo entero a la cual se asignara valor segn lo ingresado a travs del teclado lo cual es tomado por el programa mediante el mtodo LeerInt de la clase Teclado. En la lnea 14 mediante la palabra reservada catch se indica el tipo de excepcin que se presenta en este caso es del tipo ArithmeticException que es aquella que se genera cuando se ocurre una operacin aritmtica errnea; y se determina (lnea 15) que cuando ocurra muestre por pantalla la frase Divisin por Cero En la lnea 16 se establece una variable Auxiliar de tipo float la cual toma como valor el resultado de dividir 8 entre el numero almacenad en la variable Valor. En la lnea 17 se establece que el valor que se d a la variable posicin corresponda al l ndice del array.7 En la lnea 19 mediante la palabra reservada catch se indica el tipo de excepcin que se presenta en este caso es del tipo ArithmeticException que es aquella que se genera cuando se ocurre una operacin aritmtica errnea; y se determina (lnea 20) que cuando ocurra muestre por pantalla la frase Divisin por Cero En la lnea 22 mediante la palabra reservada catch se indica el tipo de excepcin que se presenta en este caso es del tipo IndexOutOfBoundsException la cual se produce se trata de acceder a un ndice fuera de la cadena; y se determina (lnea 23) que cuando ocurra muestre por pantalla la frase "ndice fuera del array" La lnea 26 muestra por pantalla la palabra Hola En la lnea 27 mediante la palabra reservada while establece que mientras el valor de la variable Posicin sea diferente de 10 se siga aplicando el cdigo establecido

a partir de la palabra reservada try , lo cual evita que se tenga que volver a correr el programa cada vez que se digite un dato por teclado.

2. CREACIN DE VENTANAS 2.1. LA CLASE MARCO1. CODIGO FUENTE

OPERACIN DEL CODIGO En la lnea 3 se hace un llamado por medio de la palabra reservada import (importar ) al paquete predeterminado de java java.awt paquete que contiene las clases para la creacin de interfaz de usuario, grficos e imgenes; en este caso se importa la clase Frame la cual permite crear una ventana con Titulo y borde. En la lnea cuatro se define la clase Marco1. En la lnea 6 se define el mtodo general. En la lnea 7se instancia un objeto de la clase Frame denominado MiMarco el cual crea una ventana.

En la lnea 8 se asigna el tamao en pixeles que tendr la ventana MiMarco por medio de un llamado al mtodo de la clase frame setSize () el cual en este caso asignara valores de ancho (400) y alto (200). En la lnea 9 se asigna el titulo que tendr la ventana MiMarco por medio de un llamado al mtodo SetTitle () de la clase frame, en este caso "Mi primera ventana". En la lnea 10 se establece que la ventana una vez asignadnos los valores anteriores sea mostrada en pantalla a travs del mtodo setVisible (true) de la clase frame. COMPILACION Y EJECUCION

2.2.

LA CLASE MARCO2 CODIGO FUENTE

OPERACIN DEL CODIGO En la lnea 2 se hace un llamado por medio de la palabra reservada import (importar ) al paquete predeterminado de java java.awt paquete que contiene las clases para la creacin de interfaz de usuario, grficos e imgenes; en este caso se importa la clase Frame la cual permite crear una ventana con Titulo y borde. En la lnea 3 se define la clase Marco2 la cual atreves de la palabra reservada extends hereda todos los mtodos y atributos establecidos en la clase Frame. En las lneas 4 a 6 se define un constructor que permite asignar titulo a la ventana a travs del mtodo setTitle y que adems hace visible por pantalla la ventana por medio del mtodo SetVisible (). En la lnea 8 se define un constructor que permite asignar el titulo de la ventana y sus dimensiones ancho y alto en pixeles. En las lneas 13 y 14 se establece un constructor que asigna el titulo Mi primera Ventana y las dimisiones 400 y 200 a la ventana.

2.3.

LA CLASEMARCO2MAIN. CODIGO FUENTE

OPERACIN DEL CODIGO

En la lnea 2 se define la clase Marco2Main En la lnea 4 se instancia la clase Marco2 teniendo en cuenta los parmetros del constructor establecido en la lnea 12 del cdigo Marco2 En la lnea 5 se crea una instancia de la clase Marco2 en la que se asignan el Titulo de la ventana y las dimensiones segn el constructor. En la lnea 6 se instancia nuevamente la clase Marco 2 teniendo en cuenta los parmetros del constructor de la lnea 4 que permite asignar nicamente el titulo de la venta

COMPILACION Y EJECUCION

2.4.

LA CLASE MARCO3 CODIGO FUENTE

OPERACIN DEL CODIGO En la lnea 2 se hace un llamado por medio de la palabra reservada import (importar ) al paquete predeterminado de java java.awt paquete que contiene las

clases para la creacin de interfaz de usuario, grficos e imgenes; en este caso se importa la clase Frame la cual permite crear una ventana con Titulo y borde. En la lnea 3 se hace un llamado por medio de la palabra reservada import (importar ) al paquete predeterminado de java java.awt paquete que contiene las clases para la creacin de interfaz de usuario, grficos e imgenes; en este caso se importa la clase Point la cual permite definir un punto con respecto al eje x y y . En la lnea 3 se define la clase Marco3. En la lnea 8 se establece el mtodo general. En la lnea 9 se instancia un objeto de la clase Frame denominado MiMarco el cual crea una ventana. En la lnea 10 se asigna el tamao en pixeles que tendr la ventana MiMarco por medio de un llamado al mtodo de la clase frame setSize () el cual en este caso asignara valores de ancho (400) y alto (200). En la lnea 11 se asigna el titulo que tendr la ventana MiMarco por medio de un llamado al mtodo SetTitle de la clase frame, en este caso "Mi primera ventana". En la lnea 12 se asigna ubicacin de la ventana con respecto a la pantalla haciendo un llamado al mtodo SetLocation () el cual permite asignar dos valores con respecto a x y luego a y en este caso 100 y 220 respectivamente. En la lnea 13 se establece que la ventana sea visible en la pantalla a travs del mtodo SetVisible (). .

COMPILACION Y EJECUSION

2.5.

LA CLASE MARCO4 CODIGO FUENTE

OPERACIN DEL CODIGO En la lnea 2 se hace un llamado por medio de la palabra reservada import (importar ) al paquete predeterminado de java java.awt paquete que contiene las clases para la creacin de interfaz de usuario, grficos e imgenes; en este caso se importa la clase Frame la cual permite crear una ventana con Titulo y borde. En la lnea 3 se hace un llamado por medio de la palabra reservada import (importar ) al paquete predeterminado de java java.awt paquete que contiene las clases para la creacin de interfaz de usuario, grficos e imgenes; en este caso se importa la clase Point la cual permite definir un punto con respecto al eje x y y . En la lnea 5 se define la clase Marco4 la cual atreves de la palabra reservada extends hereda todos los mtodos y atributos establecidos en la clase Frame. En la lnea 7 se establece un constructor de la clase Marco4 el cual permite asignar titulo a la ventana por medio del mtodo SetTitle () y la hace visible por pantalla a travs del mtodo SetVisible () En la lnea 12 se establece un constructor para la clase Marco4 que permite asignar titulo de la ventana por medio de la sentencia this y tamao a travs de mtodo setSize ()

En la lnea 17 se establece un constructor para la clase Marco4 que permite asignar titulo y tamao de la ventana por medio de la sentencia this y que adems establece la posicin de la ventana en la pantalla mediante el mtodo SetLocation el cual crea una instancia de la clase point y asigna los valores correspondientes a los ejes x y y del mismo. En la lnea 23 se establece un constructor para la clase Marco4 el cual asigna titulo "Mi primera ventana", tamao 400 x 200 y ubicacin en el punto 100,100

2.6.

LA CLASE MARCO4MAIN CODIGO FUENTE

OPERACIN DEL CODIGO En la lnea 2 se establece la clase Marco4Main En la lnea 4 se establece el mtodo principal En la lnea 5 se crea una instancia de la clase Marco4 denominada MiVentana1 segn parmetros del constructor establecido en la lnea 23 del cdigo anterior, es decir aquel que ya tiene asignados los datos de las propiedades de la ventana. En la lnea 6 se crea una instancia de la clase Marco4 denominada MiVentana2 segn parmetros establecidos en el constructor establecido en la lnea 17 del cdigo anterior que permite asignar titulo, tamao y posicin. En la lnea 7 se crea una instancia de la clase Marco4 denominada MiVentana 3 con los parmetros del constructor de la lnea 12 que asignan titulo y Tamao a la vetona.

COMPILACION Y EJECUSION

3. PANELES Y OBJETOS DE DISPOSICIN 3.1. LA CLASE BOTON. CODIGO FUENTE

OPERACIN DEL CODIGO En la lnea 2 se hace un llamado por medio de la palabra reservada import (importar ) al paquete predeterminado de java java.awt paquete que contiene las clases para la creacin de interfaz de usuario, grficos e imgenes; en este caso se importa la clase Frame la cual permite crear una ventana con Titulo y borde. En la lnea 3 se hace un llamado por medio de la palabra reservada import (importar ) al paquete predeterminado de java java.awt paquete que contiene las clases para la creacin de interfaz de usuario, grficos e imgenes; en este caso se importa la clase Button la cual permite crear botones. En la lnea 4 se hace un llamado por medio de la palabra reservada import (importar ) al paquete predeterminado de java java.awt paquete que contiene las clases para la creacin de interfaz de usuario, grficos e imgenes; en este caso se importa la clase Panel, que permite crear un contenedor. En la lnea 6 se establece la clase Boton En la lnea 8 se establece el mtodo principal. En la lnea 9 se instancia un objeto de la clase frame denominado MiMarco, es decir que se crea una ventana.

En la lnea 11 se instancia un objeto de la clase Panel denominado MiPanel, es decir que se crea un contenedor o panel. En la lnea 12 se instancia un objeto de la clase Button denominado BotonArea , es decir que se crea un botn que adems contendr el texto Calcular rea". En la lnea 13 se instancia un objeto de la clase Button denominado BotonPerimetro, es decir que se crea un botn que adems contendr el texto "Calcular permetro" En la lnea 15 mediante el mtodo add () agregamos a la ventana Mimarco el objeto MiPanel es decir el panel. En la lnea 16 mediante el mtodo add () agregamos a la ventana Mimarco el objeto BotonArea es decir el botn que dice calcular Area En la lnea 17 mediante el mtodo add () agregamos a la ventana Mimarco el objeto Botonperimetro es decir el otro botn. En la lnea 19 mediante el mtodo SetSize () asignamos el tamao 400 x 200 al objeto MiMarco es decir a la ventana. En la lnea 20 mediante el mtodo setTitle () asignamos el titulo "Ventana con botones" al objeto miMarco (ventana). En la lnea 21mediante el mtodo setVisible () definimos que la ventana sea visible. COMPILACION Y EJECUSION

3.2.

LA CLASE PANEL1.

CODIGO FUENTE

OPERACIN DEL CODIGO

En la lnea 3 se hace un llamado por medio de la palabra reservada import (importar ) al paquete predeterminado de java java.awt paquete que contiene las clases para la creacin de interfaz de usuario, grficos e imgenes; en este caso se importa la clase Frame la cual permite crear una ventana con Titulo y borde. En la lnea 4 se hace un llamado por medio de la palabra reservada import (importar ) al paquete predeterminado de java java.awt paquete que contiene las clases para la creacin de interfaz de usuario, grficos e imgenes; en este caso se importa la clase Button la cual permite crear botones. En la lnea 5 se hace un llamado por medio de la palabra reservada import (importar ) al paquete predeterminado de java java.awt paquete que contiene las clases para la creacin de interfaz de usuario, grficos e imgenes; en este caso se importa la clase Panel, que permite crear un contenedor.

En la lnea 7 se establece la clase Panel1 En la lnea 9 se establece el mtodo principal. En la lnea 10 se instancia un objeto de la clase frame denominado MiMarco, es decir que se crea una ventana. En la lnea 11 se instancia un objeto de la clase Panel denominado Panel Principal, es decir que se crea un contenedor o panel. En la lnea 12 se instancia un objeto de la clase Panel denominado PanelIzq, es decir que se crea un contenedor o panel. En la lnea 11 se instancia un objeto de la clase Panel denominado PanelDcha, es decir que se crea un contenedor o panel. En la lnea 15 se instancia un objeto de la clase Button denominado BotonCorrer, es decir que se crea un botn que adems contendr el texto "Correr" En la lnea 16 se instancia un objeto de la clase Button denominado BotonSaltar, es decir que se crea un botn que adems contendr el texto "Saltar" En la lnea 16 se instancia un objeto de la clase Button denominado BotonDescansar, es decir que se crea un botn que adems contendr el texto "Descansar" En la lnea 19 mediante el mtodo add () agregamos a la ventana Mimarco el objeto PanelPrincipal. En la lnea 20 mediante el mtodo add () agregamos al PanelPrincipal el objeto PanelIzq. En la lnea 21 mediante el mtodo add () agregamos al PanelPrincipal el objeto PanelDcha En la lnea 22 mediante el mtodo add () agregamos al PanelIzq el objeto BotonCorrer En la lnea 22 mediante el mtodo add () agregamos al PanelIzq el objeto BotonSaltar. En la lnea 23 mediante el mtodo add () agregamos al PanelDcha el objeto BotonDescansar.

En la lnea 26 mediante el mtodo setSize () asignamos tamao de 400 x 200 a la ventana MiMarco. En la lnea 27 mediante el mtodo setTitle () asignamos el titulo "Ventana con paneles" a la ventana MiMarco. En la lnea 28 mediante el mtodo setVisible () hacemos que la ventana sea visible.

COMPILACION Y EJECUSION

4. INVESTIGACION

FLOWLAYOUT: Es una clase perteneciente al paquete java.awt. Cuya funcin es colocar los componentes dentro de un panel, situados de izquierda a derecha como en una lista y saltando abajo cuando no haya espacio para un componente. Es la forma ms simple de colocar componentes en un panel. BORDERLAYOUT: Es una clase perteneciente al paquete java.awt. Cuya funcin es colocar los componentes dentro de un panel situndolos en 5 posiciones: Norte, sur, oriente, occidente y centro (North, South, East, West y Center) GRIDLAYOUT: Es una clase perteneciente al paquete java.awt. Que divide el contenedor en una tabla es decir en filas y columnas del mismo tamao. El nmero de filas y columnas se especifica en el constructor, de no ser as este las ir creando segn el nmero de componentes.

5. PROGRAMA APLICANDO LAS TRES CLASES FLOWLAYOUT, BORDERLAYOUT Y GRIDLAYOUT

5.1.

CODIGO FUENTE

5.2

COMPILACION Y EJECUSION

Potrebbero piacerti anche