Está en la página 1de 7

Actividad de aprendizaje unidad #1

Programa: Ingeniería de Software


Asignatura: Estructura de Datos

Ejercicios Propuestos Parte I - Unidad I


Investigar y presentar en un documento de Word las siguientes preguntas:
1. ¿Qué es?, ¿Cómo utilizar? y diferencias entre Scanner y/o BufferedReader
en Java. Muestre Un ejemplo de cada una.
2. Como se llama el modificador que se utiliza para declarar constantes en
Java, de un ejemplo.
3. Realice un glosario con los siguientes términos: public, private, protected,
package, sentencias Break, Continue y Return, bloque Try Catch Finally.

Respuestas
1. Scanner: La clase Scanner está disponible desde Java 5, y ofrece
métodos para leer datos introducidos por el usuario desde la entrada
standard (teclado). A diferencia de la clase String, la clase Scanner se
encuentra en el paquete java.

Para utilizar Scanner en el programa tendremos que hacer lo siguiente:

 Escribir el import
La clase Scanner se encuentra en el paquete java.util por lo tanto se
debe incluir al inicio del programa la instrucción:

import java.util.Scanner;

 Crear un objeto Scanner


Tenemos que crear un objeto de la clase Scanner asociado al
dispositivo de entrada. Si el dispositivo de entrada es el teclado
escribiremos:

Scanner sc = new Scanner(System.in);

Se ha creado el objeto sc asociado al teclado representado por


System.in
Una vez hecho esto podemos leer datos por teclado.

 Utilizar el Scanner
Para leer datos desde teclado con Scanner podemos usar los
métodos nextXxx() donde Xxx indica el tipo de dato a leer:

nextByte() para leer un dato de tipo byte.


nextShort() para leer un dato de tipo short.
nextInt() para leer un dato de tipo int.
nextLong() para leer un dato de tipo long.
nextFloat() para leer un dato de tipo float.
nextDouble() para leer un dato de tipo double.
nextBoolean() para leer un dato de tipo boolean.
nextLine() para leer un String hasta encontrar un salto de línea.
next() para leer un String hasta el primer delimitador, generalmente
hasta un espacio en blanco o hasta un salto de línea.

Ejemplo:

BufferedReader: es una clase de Java para leer el texto de una


secuencia de entrada (como un archivo) almacenando en el búfer
caracteres que leen a la perfección caracteres, matrices o líneas.
En general, cada solicitud de lectura hecha de un Reader hace que se
realice una solicitud de lectura correspondiente del carácter subyacente
o secuencia de bytes.

Por lo tanto, es aconsejable incluir un BufferedReader en cualquier lector


cuyas operaciones de lectura () puedan ser costosas, como java
FileReaders y InputStreamReaders.

Un uso típico implicaría pasar la ruta del archivo al BufferedReader de la


siguiente manera:

objReader = new BufferedReader (nuevo FileReader ("D: \


DukesDiary.txt"));
// Suponiendo que tienes un archivo de texto en la unidad D

Esto básicamente carga su archivo en objReader.Now, tendrá que


recorrer el contenido del archivo e imprimirlo.

Ejemplo:
Diferencias entre Scanner y BufferedReader:
 BufferedReader está sincronizado pero el escáner no está
sincronizado.
 BufferedReader es seguro para subprocesos, pero el escáner no es
seguro para subprocesos.
 BufferedReader tiene una memoria buffer más grande pero el
escáner tiene una memoria buffer más pequeña.
 BufferedReader es más rápido, pero el escáner es más lento en la
ejecución.
 Código para leer una línea desde la consola:

BufferedReader:

Scanner:

2. El modificador que se utiliza en Java para declarar constantes se llama


“static”; con este modificador hace que se reserve espacio para la
constante en forma independiente a que se creen o no instancias de
dicha clase.

3. Glosario de términos Java:

 public: el modificador public ofrece el máximo nivel de visibilidad, Un


elemento (Clase, método o atributo) public será visible desde
cualquier clase, independiente del paquete en que se encuentren.

 private: cuando un atributo o método es definido como prívate, su


uso está restringido al interior de la clase, lo que significa que
solamente puede ser utilizado en el interior de la misma clase. Este
modificador puede ser aplicado a métodos y atributos, pero no a la
misma clase.

 protected: Se trata del modificador de acceso empleado en la


herencia, por lo que será estudiado con más detenimiento, más
adelante en el tema de herencia. De momento, basta decir que un
método o atributo definido
 como protected es una clase puede ser utilizado por cualquier otra
clase de su mismo paquete y además, por cualquier subclase de ella,
independiente del paquete en que esta se encuentre. Una clase no
puede ser protected, solo sus miembros.

 package: un Paquete en Java es un contenedor de clases que


permite agrupar las distintas partes de un programa y que por lo
general tiene una funcionalidad y elementos comunes, definiendo la
ubicación de dichas clases en un directorio de estructura jerárquica.

 Sentencia break: la sentencia de 'break' es de tipo de control de


bucles. Dentro de la iteración en un bucle, de cualquiera de los tipos
(while, do-while, for), el uso de esta sentencia rompe la iteración de
dicho bucle.

 Sentencia continue: la sentencia continue se emplea sólo en bucles.


Al ejecutarse la iteración en la que se encuentra, el bucle finaliza y se
inicia la siguiente. También puede emplearse con etiquetas,
especificando sobre que sentencia se aplica si hay varias anidadas.

 Sentencia return: la sentencia return se emplea para salir de la


secuencia de ejecución de las sentencias de un método y,
opcionalmente, devolver un valor. Tras la salida del método se vuelve
a la secuencia de ejecución del programa al lugar de llamada de
dicho método.

 Bloque Try Catch Finally:

BLOQUE TRY: Try en inglés es el verbo intentar, así que todo el


código que vaya dentro de esta sentencia será el código sobre el que
se intentará capturar el error si se produce y una vez capturado hacer
algo con él. Lo ideal es que no ocurra un error, pero en caso de que
ocurra un bloque try nos permite estar preparados para capturarlo y
tratarlo. Así un ejemplo sería:

try {
System.out.println(“bloque de código donde pudiera saltar un error
es este”);
}

BLOQUE CATCH: en este bloque definimos el conjunto de


instrucciones necesarias o de tratamiento del problema capturado
con el bloque try anterior. Es decir, cuando se produce un error o
excepción en el código que se encuentra dentro de un bloque try,
pasamos directamente a ejecutar el conjunto de sentencias que
tengamos en el bloque catch. Esto no es exactamente así pero ya
explicaremos más adelante todo el funcionamiento. De momento
para una mejor comprensión vamos a considerar que esto es así:
catch (Exception e) {
System.out.println(“bloque de código donde se trata el problema”);
}

Fíjate que después de catch hemos puesto unos paréntesis donde


pone “Exception e”. Esto significa que cuando se produce un error
Java genera un objeto de tipo Exception con la información sobre el
error y este objeto se envía al bloque catch.

BLOQUE FINALLY: y para finalizar tenemos el bloque finally que es


un bloque donde podremos definir un conjunto de instrucciones
necesarias tanto si se produce error o excepción como si no y que
por tanto se ejecuta siempre.

finally {
System.out.println(“bloque de código ejecutado siempre”);
}

Ejercicios Propuestos Parte 2 - Unidad I

Investigar y presentar en un documento de Word las siguientes preguntas:

1. Uso de la clase Random y la clase Math.


2. Uso Clases, Métodos y Objetos en Java.
3. Uso del get y set.

Respuestas
1. La clase Random: proporciona un generador de números aleatorios
que es más flexible que la función estática random de la clase Math.
Para crear una secuencia de números aleatorios tenemos que seguir los
siguientes pasos: Proporcionar a nuestro programa información acerca
de la clase Random.

La clase Math: define una función denominada random que devuelve un


número pseudoaleatorio comprendido en el intervalo [0.0, 1.0). Existe
otra alternativa, se pueden generar números pseudoaleatorios a partir de
un objeto de la clase Random, que llame a la función miembro
nextDouble.

2. Clase: Una clase describe a un conjunto de objetos que comparten una


estructura y un comportamiento común.
Una clase es un molde o plantilla que indica cómo será un objeto de
dicha clase. En el área de la construcción, una clase podría ser el plano
de una casa que indica la estructura que debe tener en cada una de las
casas, y los objetos son la materialización de las casas construidas a
partir de dicho plano. Es por ello que se define a un objeto como una
instancia de una clase.

Para definir una clase en java se utiliza la palaba reservada ‘class’. La


sintaxis de dicha instrucción requiere además de la especificación de un
nombre para la clase.

Opcionalmente, la palabra class puede estar precedida por modificador


de acceso public; si el modificador de la clase es de tipo public debe ser
guardada en un archivo .java cuyo nombre tiene que ser exactamente el
mismo que el de la clase.

Métodos: abstracción de un acción, servicio, comportamiento o tarea


que puede ser realizado por un objeto. Generalmente, un método
manipula la información registrada en los atributos a través de una o
más instrucciones.

El tipo de dato que retorna como resultado el método. Este tipo de dato
puede corresponder a un tipo de dato primitivo, a cualquier tipo de dato
de referencia, o en caso de no retornar ningún valor debe especificar el
valor void.

Objetos: un objeto en Java es la unidad básica de este lenguaje de


programación y representa las entidades de la vida real. Un programa
típico de Java crea muchos objetos que interactúan al invocar métodos.
De esta forma, podemos decir que un objeto consiste en: Estado: está
representado por atributos de un objeto.

3. Uso del método set: los métodos modificadores setter, son aquellos
métodos que dan lugar a un cambio en el valor de uno o varios de los
atributos del objeto.

Uso del método get: los métodos consultores u observadores getter,


son métodos que devuelven información sobre el contenido de los
atributos del objeto sin modificar los valores de estos atributos.

También podría gustarte