Programacion 2024-2025 2
![]() |
![]() |
![]() |
Título del Test:![]() Programacion 2024-2025 2 Descripción: Repaso Programacion 2024-2025 2 |




Comentarios |
---|
NO HAY REGISTROS |
En lo que se refiere a las clases internas anónimas, se puede afirmar…. a) Suelen emplearse en los lugares en los que se requiere la implementación de una sola instancia. b) Siempre se hará referencia la instancia mediante su supertipo. c) Permiten definir una clase y crear una instancia de ella, todo en un solo paso. d) Todas las anteriores son correctas. ¿Cuál de las siguientes afirmaciones es cierta para los interfaces en Java?. a) Todos los métodos de la interfaz son abstractos, pero se permiten métodos con cuerpos. No es necesaria la palabra clave abstract. b) Todos los métodos de la interfaz son abstractos, luego no se permiten métodos con cuerpos. Es necesaria la palabra clave abstract. c) Todos los métodos de la interfaz son abstractos, luego no se permiten métodos con cuerpos. No es necesaria la palabra clave abstract. d) Ninguna de las afirmaciones anteriores es cierta. ¿Qué instrucción permite cargar en la variable “a” el tamaño del array?. a) int a; int[] b = new int[10]; a = b.size;. b) int a; int[] b = new int[10]; a = b.size();. c) int a; int[] b = new int[10]; a = b.length;. d) int a; int[] b = new int[10]; a = b.length();. Sea “c1” una clase con 6 atributos, y sea “c2” otra clase con 3 atributos; 3 de los atributos de “c1” son los de la clase “c2”. Tienen los mismos métodos aunque algunos se comportan de manera diferente. ¿Qué relación de herencia es la correcta y por qué?. a) No se puede establecer herencia dado que los mismos métodos se comportan de manera diferente. b) No se puede establecer herencia dado que los atributos no son exactamente los mismos. c) “c2” es hija de “c1” dado que todos sus atributos están incluidos en “c2”. d) “c1” es hija de “c2” dado que incluye sus atributos y añade nuevos. Respecto a la declaración de las clases internas y su relación con su clase envolvente…. a) La clase interna puede acceder tanto a los métodos privados como a los públicos y protegidos de la clase envolvente. b) La clase interna puede acceder tanto a los métodos públicos como a los métodos protegidos de la clase envolvente, pero no a los métodos privados de la misma. c) La clase interna puede acceder a los métodos públicos de la clase envolvente, pero no a los métodos privados ni a los protegidos de la misma. d) La clase interna no puede acceder ni a los métodos públicos ni a los privados ni a los protegidos de la clase envolvente. Respecto a las variables polimórficas en Java…. a) Es aquella que puede almacenar varios objetos de diferentes tipos. b) Ese concepto, al igual que la herencia múltiple, no se implementa en Java. c) Cada variable objeto en Java es potencialmente polimórfica. d) Se declaran siempre como public o private, pero nunca protected. ¿Qué se entiende por cohesión en lo que a una unidad de código se refiere?. a) Que la unidad de código es responsable de una y sólo una tarea. b) Que la unidad de código no se descompone en otras unidades de programación (métodos). c) Que todos los métodos que forman parte de la unidad de código se encuentran en la misma clase. d) Todas las anteriores son correctas. ¿Qué tipo de acceso se puede emplear para sobrecargar los métodos que implementan una interfaz?. a) Pueden ser métodos con acceso public y private, pero no protected. b) Sólo pueden ser con acceso public. c) Sólo pueden ser con acceso private. d) Pueden emplear cualquier tipo de acceso de Java. Una diferencia entre HashSet y TreeSet es…. a) HashSet implementa la interfaz Set y TreeSet no. b) En TreeSet se permiten elementos repetidos y en HashSet no. c) TreeSet mantiene todos los elementos ordenados en su orden natural o de acuerdo a como indique el Comparator que se indica en el constructor, y HashSet no hace esto. d) HashSet se puede recorrer mediante un Iterator, mientras que TreeSet no. ¿Cuál de las siguientes declaraciones nunca podría generar dos objetos de la misma clase con los mismos valores?. Triangulo objCir1 = new Triangulo(5, 8); Triangulo objCir2 = new Triangulo(objCir1);. Triangulo objCir1 = new Triangulo(5, 8); Triangulo objCir2 = objCir1;. Triangulo objCir1 = new Triangulo(5, 8); Triangulo objCir2 = new Triangulo(5, 8);. Triangulo objCir1 = new Triangulo(5); Triangulo objCir2 = new Triangulo(5);. ¿Cuál de las siguientes inicializaciones para un array es la correcta?. Array nombreArray3 = new int[20];. int[] nombreArray4 = new int[20];. int[] nombreArray1 = new Array(20);. Array nombreArray2 = new Array(20);. Qué es necesario si queremos utilizar el método de una clase predefinida como por ejemplo Integer.parseInt("String");?. Solamente se crea una instancia de la clase predefinida. En este caso: Integer integ = new Integer(); integ.parseInt("String");. No es necesario importar la clase en cuestión ni crear una instancia de la clase predefinida. Importar la clase en cuestión. En este caso: import java.lang.Integer; y crear una instancia de la clase predefinida. En este caso: Integer integ = new Integer(); integ.parseInt("String");. Solamente se importa la clase en cuestión. En este caso: import java.lang.Integer;. Un método de clase static, ¿se podría llamar sin instanciarse un objeto de la clase?. a) No, siempre hay que declarar el objeto y luego llamar al método. b) No, siempre hay que declarar el objeto, crearlo y a continuación llamar al método. c) Sí, se podría llamar al método desde la misma clase. d) Sí, se podría llamar al método pero sólo si la clase es abstracta. Suponiendo que, en una estructura de herencia, cada subclase de la clase abstracta “figura” tiene su propio método calcula_area, y dado un objeto f declarado como “figura”, ¿cómo tendrían que estar declarados los métodos para poder ejecutar f.calcula_area()?. a) calcula_area sólo en las subclases. b) calcula_area en “figura” y en sus subclases. c) calcula_area en figura y no en sus subclases. d) No puede ser ejecutado de ninguna manera. ¿Qué pasaría a continuación si se crea un objeto sin parámetros con la sentencia A objA = new A();, siendo la clase A la siguiente? javaCopiarEditarpublic class A { int nA; public A(int nA) { this.nA = nA; } }. a) Se crearía un objeto objA ya que se llamaría al constructor por defecto de la clase A. Se crearía un objeto objA, aunque al no tener parámetros, se pasaría un valor nulo al constructor public A(int nA){this.nA = nA;}. Daría un error de compilación debido a que si se declara un constructor en una clase el constructor por defecto deja de ser accesible. Daría un error de compilación por poner la palabra reservada new delante de la expresión A(). Las clases de un sistema corresponden a las X y los métodos a las Y. Donde X y Y son…. a) X = verbos, Y = sustantivos. b) X = sustantivos, Y = verbos. c) X = sustantivos, Y = sustantivos. d) X = verbos, Y = verbos. ¿Cómo se puede crear una nueva instancia de la clase Vector y añadir un elemento? (indica la respuesta falsa). a) Vector<Integer> v = new Vector<Integer>(); v.add(99);. b) Vector<Integer> v = new Vector<Integer>(99); v.add(99);. c) Vector<Integer> v = new Vector<Integer>(99, 99); v.add(99);. d) Vector<Integer> v = new Vector<Integer>(99); v.add(99, 99);. Sobre una variable local que se declara dentro del bloque “try”, se puede decir que…. a) es visible dentro de los bloques “catch” y “finally”. b) es visible dentro del bloque “catch” pero no del bloque “finally”. c) es visible dentro del bloque “finally” pero no del bloque “catch”. d) no es visible dentro de los bloques “catch” y “finally”. ¿Cómo podemos detectar que el usuario ha hecho click en un botón en una interfaz Swing?. a) Implementando public void eventPerformed(ActionEvent e) de la interfaz ActionListener. b) Implementando public void actionPerformed(ActionEvent e) de la interfaz ActionListener. c) Implementando public boolean actionPerformed(ActionEvent e) de la interfaz ActionListener. d) Implementando public void actionPerformed(Event e) de la interfaz ActionListener. ¿Cuál de las siguientes definiciones es correcta para una clase abstracta?. a. abstract Animal {abstract void ladrar();}. b. class abstract Animal {abstract void ladrar();}. c. abstract class Animal {abstract void ladrar();}. d. abstract class Animal {abstract void ladrar() {System.out.println("RRRRRRR");}}. try { // aquí se protege una o más sentencias } ________ { // aquí se informa y se recupera de la excepción } ¿Qué habría que colocar en el hueco correspondiente?. a) catch (exception Exception). b) catch (Event exception). c) catch (Exception exception). d) catch (event Exception). class Padre {} class Hijo extends Padre {} class Hijo2 extends Padre {} public class CEx { public static void main(String[] args) { Padre p = new Padre(); Hijo h = (Hijo) p; } }. a) El código compilará y se ejecutará sin errores. b) El código daría un error al compilar. c) El código daría un error al ejecutar. d) El código no daría ningún error; sin embargo, h no tendría el tipo deseado. public void goo() { foo f = new foo(); System.out.println(f); } public class foo { String f = "22"; public String toString() { return ("44"); } public foo() {} }. a) null. b) 22. c) 44. d) Un error de ejecución. class Padre {} 5 class Hijo extends Padre {} 6 class Hijo2 extends Padre {} 7 public class CEx { 8 public static void main(String[] args) { 9 Padre p = new Padre(); 10 Hijo h = (Hijo) p; 11 } 12 }. a) El código compilará y se ejecutará sin errores. b) El código daría un error al compilar. c) El código daría un error al ejecutar. d) El código no daría ningún error; sin embargo, h no tendría el tipo deseado. Tienes que hacer una clase que almacena objetos únicos. No es necesario que estén ordenados. ¿Qué interfaz sería la más apropiada implementar en esta clase?. a. List. b. Set. c. Map. d. Vector. Cuando varios componentes de un software colaboran para completar una misma tarea se dice que entre ellos hay…. a. una clase clara y bien definida. b. una instancia clara y bien definida. c. una interfaz clara y bien definida. d. un proceso claro y bien definido. class Vehiculo { public void imprimirSonido() { System.out.print("Vehiculo"); } } class Coche extends Vehiculo { public void imprimirSonido() { System.out.print("Coche"); } } class Bicicleta extends Vehiculo { public void imprimirSonido() { System.out.print("Bicicleta"); } } public class Test { public static void main(String[] args) { Vehiculo v = new Coche(); Bicicleta b = (Bicicleta) v; v.imprimirSonido(); b.imprimirSonido(); } }. a. Fallo de compilación. b. Lanza una excepción en tiempo de ejecución. c. Imprime “VehiculoCoche”. d. Imprime “BicicletaBicicleta”. Sobre los objetos, se puede decir (indica la respuesta falsa). a. Los objetos son especificados por las clases. b. Los objetos representan instancias de las clases. c. Los objetos se comunican con las clases con métodos. d. Una clase puede manejar objetos. public static void main(String[] args) { int valor = 5; cambiarValor(valor); System.out.println(valor); } public static void cambiarValor(int valor) { private int valor = valor * 2; }. a. 5. b. 10. c. Error en la línea 10. d. Error en la línea 6. class Cantante { public static String cantar() { return "la"; } } public class Tenor extends Cantante { public static String cantar() { return "fa"; } public static void main(String[] args) { Tenor t = new Tenor(); Cantante s = new Tenor(); System.out.println(t.cantar() + " " + s.cantar()); } }. a. fa fa. b. fa la. c. la la. d. la fa. nt[] array = new int[15]; // aquí iría el bucle array[j] = j;. a. for (int j = 0; j < array.length; j++). b. for (int j = 0; j < array.length(); j++). c. for (int j = 0; j < array.size; j++). d. for (int j = 0; j < array.size(); j++). Termina la frase. Si todos los campos no finales de una clase se declaran como privados y, además, la clase contiene métodos públicos para modificar o consultar dichos campos, esto es un ejemplo de: a) Encapsulamiento alto. b) Acoplamiento bajo. c) Cohesión alta. d) Una relación “es un”. Dada la siguiente clase Television (con campos y métodos para encender/apagar, cambiar canal y subir/bajar volumen), ¿qué podemos afirmar?. a) La clase está altamente encapsulada. b) La clase está altamente acoplada. c) La clase tiene un grado de cohesión alto. d) La clase tiene un grado de cohesión bajo. Map<String, Double> map = new HashMap<String, Double>(); ¿Cuál de las siguientes opciones es correcta para añadir una entrada al mapa?. a) map.add("pi", 3.14159);. b) map.add("e", 2.71828D);. c) map.add("log(1)", new Double(0.0));. d) Ninguna de las anteriores. Integer i = 5; switch(i) { case 1: System.out.print(1); break; case 3: System.out.print(3); case 5: System.out.print(5); case 7: System.out.print(7); break; default: System.out.print("default"); }. a) 5. b) 57. c) 57default. d) Error de compilación en la línea 29. Set<Object> objetos = new HashSet<Object>(); String one = "hola"; int two = 2; Boolean three = new Boolean(true); objetos.add(one); objetos.add(two); objetos.add(three); objetos.add(three); for (Object objeto : objetos) { System.out.print(objeto); } ¿Cuál de las siguientes afirmaciones es cierta?. a) La salida es hola, 2 y true en un orden no determinado. b) La salida es hola, 2, true y true en un orden no determinado. c) Error de compilación en la línea 35. d) Excepción en tiempo de ejecución en la línea 37. int x = 5 * 4 % 3; System.out.println(x);. a) Error de compilación en la línea 5. b) 2. c) 3. d) 6. Dada la declaracion de las siguiente variables, indicar cuales de ellas son correctas: 1 float foo = -1; 2. float foo1 = 1.0; 3. float foo2 = 42e1; 4. float foo3 = 2.02f; 5. float foo4 = 3.03d; 6. float foo5 = 0x0123;. a) 1 y 2. b) 1 y 3. c) 4 y 6. d) 3 y 4. Dado el siguiente fragmento de codigo, indica cual de las siguientes afirmaciones es correcta en relacion al valor de la variable foo: int index = 1; boolean[] test = new boolean[3]; boolean foo = test[index];. a) foo tiene el valor 0. b) foo tiene el valor null. c) foo tiene el valor false. d) Se produce una excepción y foo no posee ningún valor. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es correcta: a. La depuración es la actividad cuyo objetivo es determinar si una pieza de código produce el comportamiento pretendido. b. La prueba viene a continuación de la depuración. c. La depuración es una actividad dedicada a determinar si un segmento de código contiene errores. d. La depuración es el intento de apuntar con precisión y corregir un error en el código. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es correcta: a. Un encapsulamiento apropiado en las clases reduce el acoplamiento. b. El término acoplamiento describe cuánto se ajusta una unidad de código a una tarea lógica o a una entidad. c. El acoplamiento describe la conectividad de los propios objetos de una clase. d. Un sistema débilmente acoplado se caracteriza por la imposibilidad de modificar una de sus clases sin tener que realizar cambios en ninguna otra. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es FALSA en relación a los métodos polimórficos: a. Una variable polimórfica es aquella que puede almacenar objetos de diversos tipos. b. Las llamadas a métodos en Java no son polimórficas. c. El mismo método puede invocar en diferentes momentos diferentes métodos dependiendo del tipo dinámico de la variable usada para hacer la invocación. d. Cada objeto en Java tiene un método toString que puede usarse para devolver un String de su representación. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es correcta: a. Los métodos pueden devolver información de algún objeto mediante un valor de retorno. b. Los métodos siempre tienen parámetros con los que obtener la información necesaria. c. A partir de una clase tan solo se puede crear un solo objeto. d. El estado de los objetos se representa mediante los parámetros de su constructor. Dado el siguiente fragmento de código, indique cuál de las siguientes afirmaciones es el resultado de su ejecución: if (" String ".trim() == "String") System.out.println("Igual"); else System.out.println("No Igual");. a. El código compilará e imprimirá “Igual”. b. El código compilará e imprimirá “No Igual”. c. El código provocará un error de compilación. d. El código provocará un error en tiempo de ejecución. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es correcta: a. Los campos se conocen como variables de objeto. b. El alcance de una variable define la sección de código desde donde la variable puede ser declarada. c. Los constructores permiten que cada objeto sea preparado adecuadamente cuando es creado. d. El tiempo de vida de una variable describe el número de veces que es utilizada en un método. Según el texto de la bibliografía básica de la asignatura, indique cuáles de las siguientes expresiones resultan verdaderas: 1.! ( 4 < 5 )2. 2.( 2 > 2 ) || ( ( 4 == 4 ) && ( 1 < 0 ) ) 3. ( 2 > 2 ) || ( 4 == 4 ) && ( 1 < 0 ) 4. ( 2 > 2 ) || ! ( ( 4 == 4 ) && ( 1 < 0 ) ) 5. ( 34 != 33 ) && ! false. a. Las expresiones 3 y 4. b. Las expresiones 2 y 4. c. Las expresiones 3 y 5. d. Las expresiones 4 y 5. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es correcta: a. El lenguaje Java tiene tres variantes del ciclo for : for-each, for y for-do. b. Un ciclo while es similar en su estructura y propósito que el ciclo for-each. c. El tipo de la variable de ciclo no tiene porqué ser el mismo que el tipo del elemento declarado para la colección que estamos recorriendo con un ciclo. d. Un índice es un objeto que proporciona funcionalidad para recorrer todos los elementos de una colección. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es correcta: a. Un objeto es inmutable si su contenido o su estado no puede ser cambiado una vez que se ha creado. b. Un objeto de tipo String puede ser modificado una vez que está creado, por tanto no es un ejemplo de objeto inmutable. c. La clase String tiene un método de nombre trim que permite modificar caracteres en cualquier posición de una cadena. d. Como regla general, las cadenas de texto de tipo String se suelen comparar mediante el operador “==”. Test { public static void main(String args[]) { int n, c = 1, serie = 5; System.out.print("Cantidad de terminos: "); n = 7; while (c <= n) { System.out.print("," + serie); serie += 5; c++; } } }. a) Cantidad de terminos: 5,10,15,20,25,30,. b) Cantidad de terminos: ,5,10,15,20,25,30. c) Cantidad de terminos: ,5,10,15,20,25,30,35. d) Cantidad de terminos: ,5,10,15,20,25,30,35,40,. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es correcta: a) Las colecciones de objetos son objetos que pueden almacenar un número predeterminado e invariable de otros objetos. b) Un iterador es un objeto que proporciona funcionalidad para recorrer todos los elementos de una colección. c) Un ciclo consiste en la escritura repetida de un bloque de sentencias. d) Un arreglo (array) es un tipo especial de colección que puede almacenar un número variable de elementos. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es correcta en relación a la clase Vector de Java: a) Es final. b) Implementa java.util.List. c) Es serializable. d) Dispone de un solo constructor. Dado el siguiente fragmento de código, indique cuál de las siguientes afirmaciones es el resultado de su ejecución: public class Test { private int i = getJ(); private int j = 10; private int getJ() { return j; } public static void main(String args[]) { System.out.println((new Test()).i); } }. a) Error de compilación en relación a la restricción de acceso de variables privadas en la clase Test. b) Error de compilación en relación a las referencias realizadas. c) Sin errores de compilación, su salida es 0. d) Sin errores de compilación, su salida es 10. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es correcta: a. La interfaz de una clase describe lo que hace la clase y cómo puede usarse pudiendo mostrar parte de su implementación. b. Un mapa es una colección que almacena entradas de ternas de valores llave/valor/posición. c. La documentación de una clase debe ser suficientemente detallada como para que otros programadores puedan usar la clase sin necesidad de leer su implementación. d. Los modificadores de acceso definen las restricciones de uso de un objeto para determinados métodos, constructores o campos. Dado el siguiente fragmento de código, indique cuál de las siguientes afirmaciones es el resultado de su ejecución: public class Test { public static void main(String args[]) { char c = -1; System.out.println(c); } }. a. La expresión char c = -1; provocará un error de compilación debido a que el rango de la clase char es 0–2<sup>16</sup>-1. b. No habrá error de compilación, la salida será -1. c. No habrá error de compilación, la salida no será ningún carácter ASCII. d. No habrá error de compilación, la salida será un carácter Unicode. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es correcta: a. Una superclase es una clase que es implementada por otra. b. Una subclase es una clase que implementa a otra clase. c. Las clases que están vinculadas mediante una relación de herencia forman una jerarquía de herencia. d. La herencia nos permite heredar pero no reutilizar en un nuevo contexto clases que fueron escritas previamente. Dado el siguiente fragmento de código, indique cuál de las siguientes afirmaciones es el resultado de su ejecución: javaCopiarEditarimport java.awt.*;public class TestFrame extends Frame { public TestFrame() { setLayout(new GridLayout()); for (int i = 1; i <= 4; ++i) { add(new Button(Integer.toString(i))); } pack(); setVisible(true); } public static void main(String args[]) { new TestFrame(); } }. a. El código compila, su ejecución provoca que todos los botones aparezcan en una sola columna. b. El código compila, su ejecución provoca que todos los botones aparezcan en una sola fila. c. El código compila, su ejecución provoca que todos los botones se monten uno encima del otro y tan solo sea visible el último. d. El código compila, pero se produce un error en tiempo de ejecución cuando se añaden los componentes. ¿Cuál es el resultado de ejecutar el siguiente fragmento de código? if ("String".toString() == "String") System.out.println("Igual");else System.out.println("No Igual");. a. El código compilará e imprime “Igual”. b. El código compilará e imprime “No Igual”. c. El código compilará pero producirá un error de ejecución. d. El código no compilará. ¿Cuál es el resultado de ejecutar el siguiente código? public class Ejemplo { private int i = j; private int j = 10; public static void main(String[] args) { System.out.println((new Ejemplo()).i); } }. a. Da un error de compilación debido a las restricciones de acceso a las variables privadas de Ejemplo. b. Da un error de compilación debido a la referencia que se hace a variables declaradas con posterioridad. c. No da ningún error de compilación y produce como salida el valor 0. d. No da ningún error de compilación y produce como salida el valor 10. ¿Cuál de las siguientes es una característica de la clase java.lang.Exception?. a. private. b. extends Throwable. c. implements Throwable. d. final. Sean “Mamífero” y “Gato” dos clases que mantienen una relación de herencia padre-hijo. ¿Qué habría que modificar en el siguiente código para que sea correcto y por qué? Animal a; /* Línea 1 */ Gato b; /* Línea 2 */ a = new Animal(); /* Línea 3 */ b = a; /* Línea 4 */. a. Nada. Es correcto. b. No se puede asignar un objeto a otro de otra clase, luego cambiamos la línea 2: Animal b;. c. Es necesario explicitar el tipo cuando asignamos un objeto a otro objeto perteneciente a una clase hija, luego cambiamos la línea 4: b = (Gato) a;. d. Es necesario explicitar el tipo y crear una nueva instancia cuando asignamos un objeto a otro objeto perteneciente a una clase hija, luego cambiamos la línea 4: b = new Gato(a);. Una variable de clase, definida como static…. a. No puede ser accedida desde otra clase. b. Si se modifica, lo hace para todas las instancias de la clase. c. Es de valor constante. d. Solo puede ser accedida desde clases del mismo paquete. En una estructura switch, ¿en qué lugar tiene que ser colocado el bloque de sentencias default?. a. Antes de las diferentes sentencias case. b. Después de todas las sentencias case. c. Después de las sentencias case pero antes de la sentencia finally. d. Puede colocarse en el lugar que se quiera. Dada la siguiente instrucción: x = y--; ¿Cuál de las siguientes afirmaciones es verdadera después de ejecutarse la instrucción?. a. La instrucción da un error de compilación. b. x > y. c. x == y. d. x < y. ¿Qué ocurre si se compila y ejecuta el siguiente código? public class Clase { public static void main(String[] arguments) { met(arguments); } public void met(String[] arguments) { System.out.println(arguments); System.out.println(arguments[1]); } }. a. Da un error de compilación porque no se puede hacer referencia al método no-estático met. b. Da un error de compilación porque el método main no puede ser estático. c. Da un error de compilación porque el array arguments no puede pasarse como parámetro al método met. d. Da un error de ejecución porque en el acceso al array arguments nos salimos del rango de dicho array. En la definición de una interfaz en Java: a. Es necesaria emplear la palabra clave abstract. b. La signatura de los métodos de una interfaz tiene visibilidad public o private, pero no protected. c. No se permiten campos constantes. d. Aunque no se indique usando la palabra clave final, todos los campos son tratados como si así fuesen. Una clase interna: a. Puede acceder a los campos y métodos públicos y protegidos de la clase envolvente, pero no privados. b. Puede acceder a los campos y métodos públicos de la clase envolvente, pero no a privados ni a protegidos. c. Puede acceder a los campos y métodos públicos y privados de la clase envolvente. d. No puede acceder a los campos y métodos privados de la clase envolvente. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es correcta: a. La depuración es la actividad cuyo objetivo es determinar si una pieza de código produce el comportamiento pretendido. b. La prueba viene a continuación de la depuración. c. La depuración es una actividad dedicada a determinar si un segmento de código contiene errores. d. La depuración es el intento de apuntar con precisión y corregir un error en el código. ¿Cuál de los siguientes no es un identificador válido en Java?. a. #variable. b. $variable. c. _variable. d. v. ¿De qué clase deriva la clase ArrayList?. a. AbstractList. b. AbstractCollection. c. ArrayCollection. d. ListCollection. Cuando queremos que un objeto oiga eventos de acción disparados por el usuario, el objeto tiene que implementar la interfaz …. a. ActionEvent. b. ActionListener. c. ListenerAction. d. ListenerEvent. Un conjunto es una: a. Que almacena cada elemento individual una sola vez como mínimo. No mantiene un orden específico. b. Que almacena cada elemento individual una sola vez como mínimo. Mantiene un orden específico. c. Que almacena cada elemento individual una sola vez como máximo. No mantiene un orden específico. d. Que almacena cada elemento individual una sola vez como máximo. Mantiene un orden específico. Según el texto de la bibliografía básica de la asignatura, indique cuál de las siguientes afirmaciones es falsa: a. Únicamente las clases que implementan la interfaz List permiten el uso de iteradores. b. Un iterador es un objeto que proporciona funcionalidad para recorrer todos los elementos de una colección. c. Un iterador permite recorrer cualquier tipo de colección hacia adelante utilizando el método next() combinado con el método hasNext() para comprobar si se ha alcanzado el final de la colección. d. Una colección puede recorrerse tanto con un iterador como con un ciclo for-each. Ambas formas son equivalentes. Respecto a los bucles, indique cuál de las siguientes afirmaciones es falsa: a. El cuerpo de un bucle for-each puede repetirse 0 o más veces. b. Un bucle for-each puede aplicarse sobre cualquier clase que implemente la interfaz Iterable. c. El cuerpo de un bucle while siempre se ejecuta, como mínimo, una vez. d. Un bucle for-each puede aplicarse sobre arreglos (arrays). Dado el siguiente código: String c1 = new String("Hola"); String c2 = new String("Mundo"); if ( ……… ) System.out.println("Ambas cadenas son iguales"); else System.out.println("Ambas cadenas no son iguales"); ¿Cuál de las siguientes opciones debería ponerse en la línea de puntos para que el programa imprima Ambas cadenas no son iguales?. a. c1 == c2. b. c1.equals(c2). c. c1.compareTo(c2) >= 0. d. c1 = c2. Indique cuál de las siguientes afirmaciones es verdadera: a. Para definir una variable de instancia es necesario utilizar la palabra reservada static. b. Un método estático puede acceder a cualquier componente (método o variable) no estático de su clase. c. Los métodos estáticos pueden ser sobrescritos. d. Una variable de clase puede ser modificada sin necesidad de haber instanciado objeto alguno de dicha clase. Indique cuál de las siguientes afirmaciones es falsa: a. El objetivo de la sobrecarga de métodos es facilitar la invocación de un mismo método pasándole un conjunto de parámetros de entrada diferentes. b. Se puede sobrecargar un método variando el tipo de retorno de éste sin variar los parámetros de entrada. c. Un método puede ser sobrecargado en la misma clase o en una subclase. d. Los métodos sobrecargados pueden cambiar el modificador de acceso del método original. Dado el siguiente código, indique cuál de las siguientes afirmaciones es cierta: public class MiClase { int x = 2; float y = 4.3f; public static void main(String[] args) { for (int z = 1; z < x; z++) System.out.println("Valor de y=" + y); } }. a. Se produce un error en tiempo de ejecución. b. El código no compila. c. Se imprime en pantalla “Valor de y=4.3”. d. Se imprime en pantalla “Valor de y=4.3000”. Dado el siguiente código, ¿cuál de las siguientes afirmaciones es correcta? Set<Object> objetos = new HashSet<Object>(); String obj1 = "JAVA"; int obj2 = 5; Boolean obj3 = new Boolean(true); objetos.add(obj3); objetos.add(obj1); objetos.add(obj2); objetos.add(obj3);for (Object object : objetos) { System.out.print(object); }. a. Error en tiempo de ejecución. b. Se muestran por pantalla JAVA5 y true en un orden no determinado. c. Se muestran por pantalla JAVA5 y true en el orden exacto en el que fueron insertadas en la colección. d. Se muestran por pantalla JAVA5 y true en un orden no determinado y, además, true se muestra dos veces. |