Font size
WorksheetsProgramacion parte 3
Total questions: 81
Worksheet time: 41mins
La clase BufferedWriter sirve para. Marca las opciones correctas.
Escribir datos de cualquier tipo en un fichero de texto.
Leer caracteres de un fichero de texto.
Escribir caracteres individuales en un fichero de texto.
Escribir cadenas en un fichero de texto.
Cerrar un flujo de salida de texto.
Nos tenemos que asegurar de que todos los flujos abiertos deben cerrarse antes de que termine la aplicación porque.
Porque se quedarían abiertos hasta que se apague el ordenador.
Porque otra aplicación podría alterarlos.
Porque se pueden borrar datos de un archivo.
Porque se deben liberar los recursos asociados, como los archivos. Además, podrían quedar caracteres del búfer sin escribir.
¿Qué tipo de excepciones captura la siguiente secuencia de bloques catch? catch(Exception ex){ … } catch(IOException ex){ … }
Ninguna.
Solo las de entrada y salida.
Las de usuario.
Cualquiera.
Las aritméticas.
Las excepciones de usuario pueden ser arrojadas por medio de la palabra reservada.
catch
throws
throw
try
Apertura de flujos con recursos.
Es una nueva forma de abrir flujos en Java, que permite prescindir del cierre explícito de los archivos y del método close().
Consiste en abrir flujos asociados con varios archivos a la vez.
Es abrir archivos recurriendo a una tabla.
Consiste en abrir flujos sin peligro de que se produzcan excepciones.
¿Cómo nos aseguramos de que, al finalizar un programa, se graban en disco todos los datos que quedan pendientes en el buffer de un flujo BufferedWriter? Marca las opciones correctas.
Haciendo una apertura del flujo con recursos (trycatch-resources).
Cerrando el flujo con el método close().
Esperando un tiempo antes de cerrar la aplicación.
Ejecutando el método finally().
Ejecutando el método close() dentro de un bloque finally.
Los flujos se cierran.
Apagando el ordenador.
Abortando el programa.
Con el método close().
Con el método cerrar().
Una excepción en Java.
Se produce cuando un disco está defectuoso.
Se arroja al sistema cuando se produce una condición anómala durante la ejecución de un programa.
Tiene lugar cuando un código es sintácticamente incorrecto.
Es un valor único de una variable.
Una estructura try-catch debe constar de.
Un bloque try obligatorio, tantos bloques catch como queramos y un solo bloque finally opcional.
Uno o más bloques try opcionales y un bloque finally obligatorio.
Un bloque try obligatorio y un bloque catch opcional.
Un bloque try, un bloque catch y uno o más bloques finally.
Elige la palabra que completa la siguiente afirmación. Las excepciones comprobadas están sometidas al requisito de captura o especificación ___.
obligatorio
opcional
prohibido
eventual
La Clase Scanner.
Solo permite leer texto de cualquier flujo de texto.
Permite leer y analizar texto de cualquier flujo de entrada de texto.
Permite digitalizar imágenes.
Solo nos permite leer de la consola.
El método read(), invocado por un flujo de tipo FileReader, lee cuántos caracteres en cada llamada.
Uno.
Dos.
Tres.
Ninguno.
La clase Scanner sirve para. Marca las opciones correctas.
Leer datos introducidos por teclado.
Leer datos interpretados a partir de una cadena de caracteres.
Escribir datos en un fichero de texto.
Leer datos interpretados a partir de un fichero de texto.
Leer objetos de cualquier tipo.
Una excepción comprobada es:
Una excepción que hemos reparado.
Una excepción previsible, que el propio compilador nos obliga a gestionar.
Una excepción que no detiene la ejecución del programa.
Una excepción muy conocida.
Para tratar una excepción lanzada en un método, selecciona las afirmaciones correctas:
Esperamos que desaparezca ella sola.
La tiramos a la papelera.
La capturamos en una estructura try-catch.
Transferimos su tratamiento al método invocante por medio de la palabra clave throws.
Los flujos de tipo BufferedReader sirven para leer:
Cualquier cadena de caracteres
Solo líneas de texto
Caracteres individuales y líneas de texto
En un bloque catch se puede recoger:
Dos tipos de excepciones
Todos los tipos de excepción que queramos
Un solo tipo de excepción
Ningún tipo de excepción
La palabra reservada finally:
Termina la ejecución de un método, forzando el return.
Termina la ejecución de un programa.
En una estructura try-catch, fuerza la ejecución de su bloque antes de que se ejecute una sentencia return e independientemente de si se produce o no una excepción.
Indica el final de un método.
En Java, se llama excepción a:
Un número muy grande
Una cadena de caracteres
Cualquier cosa que no sea frecuente
Un error
Cuando llegamos al final de un flujo de entrada de tipo FileReader, el método read():
Devuelve -1
Devuelve null.
Muestra el mensaje: End of File
Produce una excepción EOFException
Un flujo de tipo BufferedReader:
Solo sirve para leer cadenas de caracteres.
Crea un archivo de texto con búfer.
Accede a un archivo de texto para lectura con búfer.
Nos permite acceder a archivos binarios.
El método close(), invocado por un flujo BufferedReader, sirve para:
Cerrar el entorno de desarrollo
Cerrar la aplicación
Borrar el archivo de texto
Leer todos los caracteres pendientes que haya en el buffer y cerrar el flujo
En un flujo de texto, se transmiten datos de tipo:
Byte
Numérico
Carácter
Booleano
Supongamos que la clase B hereda de A. Si en A está definido el método int miMetodo() y definimos en B el método String miMetodo(). Este último:
No tiene ninguna relación con el método definido en A
Dará error de compilación
Heredará del de A, haciendo lo mismo
Heredará de A, ejecutando el código definido en B
Una clase puede heredar:
De una clase.
Solo de la clase Object.
De todas las clases que queramos.
De dos clases.
Elige la palabra que completa la siguiente afirmación: El método ___, definido en la clase Object, sirve para comparar objetos.
boolean equals()
toString()
getClass()
hashCode()
Si queremos que el método miMetodo(), que B hereda de A, haga algo distinto:
Respetaremos el prototipo y cambiaremos su implementación, haciendo overriding
Deberemos cambiar el tipo devuelto
Debemos cambiar el nombre
Deberemos cambiar su lista de parámetros, respetando el nombre
El método super():
Es el constructor de una subclase
Es el constructor de la superclase
No existe en java
Hace overriding de un método definido en una superclase
Un método abstracto es:
Un método implementado en una superclase
Un método incomprensible
Un método declarado con su prototipo, pero no implementado
Un método absurdo
Para obtener la clase a la que pertenece un objeto se invoca el método:
myClass()
clase()
class()
getClass()
¿Cuál de las siguientes afirmaciones sobre el método toString() es correcta?
Sirve para mostrar la información que nos interesa de un objeto.
Encadena varios objetos.
Es un método abstracto de Object que tenemos que implementar.
Convierte automáticamente un objeto en una cadena.
Observa el dibujo y responde: ¿La imagen siguiente representa una herencia múltiple?
Sí, porque C hereda tanto de B como de A
No, porque tanto B como C tienen una única clase padre
Una clase abstracta:
No está implementada
Tiene al menos un método abstracto
No se puede instanciar
No se puede heredar de ella
Elige la palabra que completa la afirmación: El método ___, definido en la clase Object, sirve para obtener una cadena con la información que consideramos relevante en los objetos de una clase.
toString()
equals()
hashCode()
compareTo()
¿Cuál de las siguientes afirmaciones sobre el método equals() es correcta?
Hay que implementarlo porque es abstracto
No hay que implementarlo, ya que se hereda de Object
Se hereda de Object, pero debemos reimplementarlo al definirlo en una clase
Sirve para comparar solo objetos de la clase Object
La selección dinámica de métodos:
Es la ejecución de distintas implementaciones de un mismo método, asignado objetos de distintas clases a una misma variable en tiempo de ejecución
Se produce cuando una variable cambia de valor durante la ejecución de un programa
Es la asignación de un mismo objeto a más de una variable en tiempo de ejecución
Es el cambio de tipo de una variable en tiempo de ejecución
La palabra reservada super permite acceder a:
Cualquier miembro visible de la superclase
A nada, no existe en Java
Cualquier miembro de la superclase
El constructor de la superclase
En el constructor de una subclase B podemos invocar el de su clase padre A por medio de:
super
new A()
super()
Nada. No se puede invocar
¿Cómo puedo hacer en Java que una clase A herede directamente de las clases B y C, entre las cuales no hay relación de herencia?
Escribiendo A implements B, C
De ninguna manera. En Java no existe la herencia múltiple entre clases
Escribiendo B, C extends A
Escribiendo A extends B, C
¿En qué circunstancia puede una clase C heredar de las clases A y B?
Nunca
Si A hereda de B
Si B hereda de A
Elige la palabra que completa la afirmación: ___ es la técnica por la que se decide en tiempo de ejecución la versión de un método que se ejecuta.
Selección dinámica de métodos
Sobrecarga de métodos
Conversión de tipos
Variables locales
¿En qué consiste la sustitución u overriding?
En sustituir un valor de una variable por otro
En sustituir una clase por una subclase
En sustituir un atributo por otro del mismo nombre
En sustituir un método heredado por otro implementado en la propia clase
Sobre el método equals(): Es un método definido en la clase Object
Verdadero
Falso
Sobre el método equals(): Sirve para comparar dos clases
Verdadero
Falso
Sobre el método equals(): Sirve para comparar dos objetos, devolviendo true si son iguales y false si son distintos
Verdadero
Falso
Sobre el método equals(): Es un método que tenemos que implementar nosotros si queremos que compare objetos y no referencias
Verdadero
Falso
El método equals(), tal y como está implementado en la clase Object, devuelve true cuando los objetos comparados:
Tienen la misma dirección en la memoria
Tienen los mismos métodos
Tienen los mismos atributos
Tienen atributos con los mismos valores
¿Cuál de las siguientes afirmaciones sobre el método getClass() es correcta?
Obtiene la superclase de una clase
Obtiene la clase a la que pertenece un objeto
Convierte los objetos en clases
Obtiene una clase a partir de su nombre
Sobre la clase Object es cierto indicar que:
Hereda de todas las demás
Es abstracta
Tiene todos sus métodos abstractos
Es superclase de todas las demás clases
El atributo protected int edad, definido en la clase A, es visible por la clase B si:
B hereda de A y pertenece al mismo paquete o bien a otro desde el que se importa A
A hereda de B
B está definido en otro paquete dentro del mismo proyecto
A es importada desde otro paquete
Si la clase B hereda de A, escribiremos:
B extends A
A inherits B
B hereda de A
A extends B
Un paquete se define como:
Un contenedor de métodos
Un contenedor de atributos
Un contenedor de clases
Un contenedor de miembros
El recolector de basura destruye los objetos que son inútiles liberando la memoria que ocupa. ¿Cada cuánto tiempo se ejecuta el recolector de basura?
Cada segundo.
No sabemos cuándo entrará en juego el recolector de basura.
Cada vez que se crea un nuevo objeto mediante el operador new.
Cada cinco segundos.
A partir de la siguiente situación de la referencia de las variables a y b, podemos afirmar: En la imagen, dos flechas etiquetadas a y b apuntan al mismo objeto.
Si asigno null a la variable a, el recolector de basura destruirá el objeto.
Las modificaciones realizadas en el objeto a partir de la variable a son independientes de las modificaciones realizadas con la variable b.
Si asigno null a la variable b, el recolector de basura destruirá el objeto.
Cualquier modificación realizada en el objeto con una variable será visible usando la otra variable.
Relaciona cada concepto con la definición que le corresponde. ¿Qué es Atributo?
Variable cuyo ámbito es una clase.
Variable cuyo ámbito es un método.
Variable cuyo ámbito es el bloque de instrucciones de una estructura de control.
Relaciona cada concepto con la definición que le corresponde. ¿Qué es Variable local?
Variable cuyo ámbito es una clase.
Variable cuyo ámbito es un método.
Variable cuyo ámbito es el bloque de instrucciones de una estructura de control.
Relaciona cada concepto con la definición que le corresponde. ¿Qué es Variable de bloque?
Variable cuyo ámbito es una clase.
Variable cuyo ámbito es un método.
Variable cuyo ámbito es el bloque de instrucciones de una estructura de control.
Dos clases se consideran vecinas siempre y cuando:
Todo lo anterior ha de cumplirse para que dos clases sean vecinas.
Ambas dispongan del mismo número de constructores.
Sean visibles.
Pertenezcan al mismo paquete.
Selecciona la frase correcta.
Un objeto puede ser del tipo de muchas clases.
Una clase puede tener muchos objetos de su tipo.
Pueden existir objetos que no pertenezcan a ninguna clase.
Las clases y los objetos no tienen relación alguna.
Elige la palabra que completa la siguiente afirmación: Para permitir que un atributo no sea visible por ninguna otra clase tendrá que estar definido con el modificador de acceso: ___.
public
private
protected
static
Relaciona cada concepto con la definición que le corresponde. ¿Qué son Clases vecinas?
Clases que pertenecen al mismo paquete.
Clases que se han definido en paquetes distintos.
Relaciona cada concepto con la definición que le corresponde. ¿Qué son Clases externas?
Clases que pertenecen al mismo paquete.
Clases que se han definido en paquetes distintos.
Elige la palabra que completa la siguiente afirmación: Una ___ puede entenderse como la ubicación (o identificación) de un objeto en memoria.
Referencia
Variable
Método
Paquete
Indica las frases correctas con respecto a this().
Permite invocar cualquier método de una clase.
Permite invocar, desde un constructor, a otros constructores.
Siempre tiene que ser utilizado en la primera línea de un constructor.
Puede usarse tanto en minúsculas, this(), como en mayúsculas, This().
Sustituye al operador new en clases con atributos estáticos.
¿Qué diferencia existe entre: Integer n1; int n2;
Son exactamente iguales
Ambos almacenarán un valor entero, pero n1 es un objeto mientras n2 es un tipo primitivo
Ninguna de las anteriores es cierta
La variable n1 puede guardar cualquier tipo primitivo, mientras que n2 solo puede almacenar enteros
Elige la palabra que completa la siguiente afirmación: Un atributo estático ___ es aquel del que no existe una copia en cada objeto.
estático
público
privado
mutable
¿Cuáles son los elementos que componen una clase?
Atributos
Habilidades
Métodos
Paquetes
Carpetas
Si desde un constructor queremos invocar a otro constructor de la misma clase, tendremos que usar
this.
set().
this().
get().
Cuando hablamos de miembros de una clase, nos estamos refiriendo a:
Todos los atributos y métodos, indistintamente de los modificadores de acceso utilizados.
Todos los métodos.
Todos los atributos.
Todos los atributos y métodos que son visibles por sus clases vecinas.
En el caso de que una variable local o de bloque oculte un atributo, ¿cómo podemos acceder a él?
objecto.atributo
class.atributo
global.atributo
this.atributo
Elige la palabra que completa la siguiente afirmación: La clase ___ es un envoltorio del Carácter tipo primitivo char.
Character
String
Char
Integer
Elige la palabra que completa la siguiente afirmación: La palabra reservada ___ hace referencia this al objeto actual.
this
super
static
null
En la definición de una clase, los únicos modificadores de acceso que se pueden utilizar son:
public y el modificador de acceso por defecto.
El modificador class.
public.
public, el modificador de acceso por defecto y private.
Ordena las fases del proceso de creación de un objeto, paso a paso, que lleva a cabo el operador new: ¿Cuál es la primera fase?
Busca en memoria un espacio suficientemente grande para albergar un objeto del tipo indicado
Construye el objeto
Invoca el constructor
Devuelve la referencia del objeto recién creado
Un miembro cuyo modificador de acceso es private será visible desde:
Todas las clases vecinas.
Ninguna de las respuestas anteriores.
Todas las clases externas.
Es indistinto el paquete, pero será visible siempre que se importe la clase que lo contiene.
Qué es una clase envoltorio o wrapper.
Son clases que internamente contienen un dato de tipo primitivo.
Son clases que solo contienen atributos de tipo primitivo.
Aunque se les llama clases, en realidad son paquetes.
Son clases que internamente tienen otras clases públicas.
Qué diferencia un atributo estático definido en una clase de otro que no lo es.
Existe una copia del atributo estático en todos y cada uno de los objetos, mientras que del atributo no estático solo existe una copia en la clase.
El atributo estático es visible por todas las clases vecinas, mientras que el no estático solo será visible para las clases que usen importación.
Solo existe una copia del atributo estático en la clase, mientras que el atributo no estático tendrá una copia en cada uno de los objetos.
Ambos disponen de copias en cada objeto, pero el atributo no estático es accesible mediante la clase y el no estático es accesible mediante los objetos.
La ocultación de atributos puede definirse como.
El proceso en el que un atributo estático deja de serlo.
Todas las respuestas anteriores son correctas.
El proceso en el que se define una variable local (en un método) con el mismo identificador que un atributo.
El proceso en el que un atributo pasa de ser público a privado.
Si por error dejamos un objeto sin ninguna referencia, siempre podremos volver a referenciarlo mediante.
Es imposible.
La referencia null.
Utilizando new.
La referencia this.
Un constructor. Indica cuáles afirmaciones son verdaderas.
Debe tener el mismo nombre que la clase a la que pertenece.
Puede tener cualquier nombre siempre que se especifique en la definición de la clase.
Puede sobrecargarse.
Puede ser invocado durante cualquier momento de la vida del objeto.
En el caso de que no se defina uno, Java definirá uno por defecto para la clase.
Qué hace el operador new.
Construye un objeto, comprueba que su clase esté importada y devuelve su referencia.
Construye un objeto, invoca al constructor y devuelve su referencia.
Busca en la memoria un objeto del mismo tipo, invoca al constructor y devuelve su referencia.
Busca en memoria un objeto del mismo tipo y devuelve su referencia.
