
|
Crear Objetos (de la biblioteca de Java)En java para crear objetos utilizamos una palabra clave, new, esta misma crea un objeto del tipo indicado a su derecha, repasemos del ejemplo anterior la siguiente línea: BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); La clase BufferedReader, pertenece a la biblioteca de Java “java.io” la cual fue importada antes de la declaración de la clase LeerRenglones, InputStreamReader, pertenece a la misma biblioteca. Nota: En este punto, estamos utilizando y creando objetos pertenecientes a la biblioteca, como podemos ver la declaración de nuestra clase LeerRenglones no tiene propiedades ni métodos dinámicos que puedan llegar a ser métodos de algún objeto, sólo el método estático main que es el que nos permite iniciar la ejecución de código. También podríamos haber usado DataInputStream. Veamos que significa cada parte de esta línea, el concepto de “BufferedReader br=” es una asignación y una declaración simultánea, como vimos antes el signo “=” asigna a la variable u nombre de objeto de la izquierda el contenido de la derecha. Eso quiere decir que “br” será una variable que apuntará a un objeto del tipo BufferedReader, br no será un objeto, será el nombre con el que accederemos al objeto en memoria ram, si en la siguiente línea repitiéramos otra asignación a br, es decir “br=....” sin la declaración porque ya se sabe que es del tipo BufferedReader, entonces la variable br apuntará a otro objeto del tipo BufferedReader, el anterior sigue existiendo en memoria, pero será eliminado en la próxima ejecución del recolector de basura de la JVM. Cada vez que se crea un objeto nuevo el nombre de la clase se utiliza como el de una función, en realidad esta función especial es el método llamado constructor de la clase que es el que fabricará e inicializará de acuerdo a las variables que recibe como argumentos uno nuevo del tipo de su clase. Esto lo veremos más adelante, por el momento sólo haremos mención de que el objeto BufferedReader, necesita otro objeto que no es del tipo InputStream como lo es el objeto System.in, En cambio necesita uno del tipo InputStreamReader, que es el que es capaz de transformar un objeto InputStream, en InputStreamReader que es requerido para que el constructor de BufferedReader fabrique un objeto BufferedReader, a partir de uno InputStreamReader. Nota: Todo este procedimiento tiene el único fin de tener una variable llamada br que apunta a un objeto de tipo BufferedReader que es capaz de leer líneas desde la entrada, como lo construimos con la entrada del teclado, nos leerá los renglones que pretendíamos sin codificar la entrada del salto de línea. El bloque de control de errores, try{}catch(){}Como podemos ver en este ejemplo utilizamos la estructura de control de errores que es obligatoria para esa conversión que hicimos para poder leer líneas con el método readLine(), la estructura try{} encierra entre las llaves el código que puede producir una excepción (un error grave) que debe ser manejado por el bloque catch(Exception ex){}, en este caso solo capturamos la excepción que puede surgir y cualquier otra que no sea IOException no será capturada. try {nombre = br.readLine();} catch (IOException ex) {ex.printStackTrace();} Catch captura un tipo de error dentro del bloque try{}, y el bloque encerrado entre llaves ejecutará código que debería manejar la excepción, en este caso ignoramos todo tipo de acción que podríamos llevar a cabo y usamos la variable ex del tipo IOException para imprimir en pantalla los errores con el método printStackTrace de dicho objeto. leavecomment |
|
|||||||||||||||||||||||
*Hasta que esta leyenda no desaparezca el libro no ha sido terminado, descarge en pdf:
http://compunauta.com/forums/linux/programacion/java/ebook.html