Taller de Programación Orientada a Objetos - Semana 10 - Semana 9
Aquí les muestro algunas capturas de pantalla implementando eventos y excepciones.
EVENTOS
Todos mis eventos están orientados a la interfaz gráfica, es por ello que les muestro como quedarían algunos de mis eventos implementando una de las barras de herramientas.
Implementación en el Código
Ejecución
EXCEPCIONES
1. Comenzamos por analizar los menús; cuando entramos a un menú en pantalla, hay que elegir una opción válida. Las opciones válidas son números dentro del rango permitido (el rango esta dado por el número total de opciones). Si se elige una opción fuera de ese rango ocurrirá una excepción y se imprimirá un mensaje en pantalla. De igual forma, si se introduce un carácter, espacio, salto de línea, tabulación, etcétera; como opción, se mostrará un mensaje de error también.
Implementación en el Código
Ejecución
2. Después de que elegimos una opción, hay que cargar los datos de la empresa. Los datos de la empresa están almacenados en un archivo de sistema el cual hay que leer.
Aquí puede ocurrir otra excepción, cuando el archivo no es encontrado. Si eso pasa, se muestra un mensaje de excepción y no se puede realizar ninguna factura.
Impementación en el Código
Ejecución
3. Cuando se toman los datos del concepto a facturar, hay campos en los que forzozamente hay que introducir un valor númerico, tal es el caso del precio y la cantidad de artículos de un solo tipo. En este caso se implementa un NumberFormatException.
Si ocurre la excepción, es decir, se introdujo como valor un caractér, un espacio, tabulacion o salto de línea, cualquier cosa menos un número; se mostrará un mensaje de excepción y se pedirá el valor de nuevo.
Implementación en el Código
Ejecución
Espero les sirva la información de esta entrada.
Suerte :)
Que bien que también ocupas excepciones producidas por tu programa y no únicamente reaccionas a los que producen las librerías. Aunque ahí en tu throw new Exception(...) tienes una excelente oportunidad de usar excepciones propias tuyas definidas con herencia desde java.lang.Exception para que se puedan manejar por tipo y no a base del mensaje que incluyen.
ResponderEliminarTe pongo 5.