Programacion 11-20
|
|
Título del Test:
![]() Programacion 11-20 Descripción: Tests Medac Prog temas 11 al 20 |



| Comentarios |
|---|
NO HAY REGISTROS |
|
¿Una clase se puede declarar como abstracta y no contener métodos abstractos?. Si, no hay ningún problema. No, en las clases abstractas todos los métodos tienen que ser abstractos forzosamente. Si, pero solo si como mínimo la hereda otra clase. No, ya que mínimo ha de tener un método abstracto. Las interfaces: Pueden contener variables privadas, y estas ser usadas en los métodos. En ellas todos los métodos son abstractos de forma implícita. Tienen que heredar de la clase Interface. Son lo mismo que las clases abstractas. La interfaz Comparator. Se emplea para definir el orden natural de los objetos de una clase. Tiene un solo método llamado comparator. Se utiliza para definir múltiples formas de ordenar objetos. Permite definir un único criterio de ordenación. ¿Cómo indicamos en Java que una clase va a usar los métodos de una interfaz?. Con la palabra reservada implements. Con la palabra reservada extends. Con la palabra reservada implementa. Con la palabra reservada aplic. Tenemos una clase que implementa dos interfaces diferentes y estas contienen un método con el mismo nombre: Si los dos métodos devuelven un tipo de dato diferente se producirá un error de compilación. Si los dos métodos devuelven el mismo tipo de dato se ejecutarán los dos. Si los dos métodos son exactamente iguales, se producirá un error de compilación. Una clase no puede implementar dos interfaces. ¿Qué palabra reservada tenemos que utilizar para declarar una interfaz?. enum. interface. inter. intertract. Sobre las interfaces: La interfaz que se use no pertenece a la jerarquía de clases. La interfaz que se use pertenece a la jerarquía de clases. Las interfaces tienen que heredar de una clase que pertenezca a la jerarquía en la que se usa. Las interfaces solo se pueden utilizar con clases de las que no se pueda heredar. ¿Qué palabra reservada tenemos que utilizar para declarar una clase abstracta?. Interface. final. abstract. static. Como podemos saber de que tipo es un objeto. Mediante la sentencnia instanceof. Mediante la sentencia typeof. Mediante la sentencia instanceType. Mediante la sentencia instance. ¿Cómo separamos las interfaces cuando se implementa más de una en una clase?. Mediante espacios en blanco. Mediante comas. Mediante punto y coma. Mediante tabuladores. ¿Dónde se van a encontrar todas las clases de acceso a ficheros?. En el paquete java.files.*;. En el paquete java.io.*;. En el paquete java.files.io.*;. En el paquete java.io.files.*;. ¿Cuál de las siguientes clases no ofrece un acceso a flujos de caracteres?. InputStreamReader. Reader. InputStream. Writer. La ruta absoluta: Indica la posición de un fichero desde la posición actual. Indica la posición de un fichero desde la raíz. Indica la posición de un fichero desde la posición actual en Windows y desde la raíz en GNU/Linux. Indica la posición de un fichero desde la posición actual en GNU/Linux y desde la raíz en Windows. En cuanto a cómo se guardan los datos en un fichero, ¿Cuál es el tipo de organización que emplea dos archivos para almacenar la información?. Organización Secuencial. Organización Directa. Organización Aleatoria. Organización Secuencial Indexada. El flujo predeterminado para la salida es: El teclado. La pantalla. La pantalla, pero con las letras rojas. Un fichero. El conjunto de información que puede ser escrito o leído de una sola vez se corresponde con. Registros lógico. Registro físico. Dirección lógica. Factor de bloque. El flujo predeterminado para la entrada es: El teclado. La pantalla. La pantalla, pero con las letras rojas. Un fichero. De acuerdo al tipo de organización, que tipo de fichero no existe. Secuencial. Por bloques. Aleatorio. Secuencial indexado. La ruta relativa: Indica la posición de un fichero desde la posición actual. Indica la posición de un fichero desde la raíz. Indica la posición de un fichero desde la posición actual en Windows y desde la raíz en GNU/Linux. Indica la posición de un fichero desde la posición actual en GNU/Linux y desde la raíz en Windows. ¿Qué tipo de rutas existen?. Ruta absoluta. Ruta relativa. Ruta intermedia. Absoluta y relativa. Para borrar un directorio: Lo podemos hacer con el método delete(). Los podemos hacer con el método delete() pero cuando esté vacío. En Java no se pueden tratar los directorios, solo los ficheros. En Java no se pueden eliminar directorios, solo podremos crearlos. ¿Qué excepción provoca una división entre cero?. IndexOfBoundsException. Exception. ArithmeticException. NullPointerException. ¿Cuántas excepciones se pueden propagar en un método?. Todas las que necesitemos, separadas mediante comas. Solo una, las demás habrá que tratarlas con un bloque try-catch. Solo una, las demás habrá que tratarlas con un bloque try-catch. Solo pueden propagar excepciones las funciones, mientras que los procedimientos no. ¿Cuántos bloques finally puede haber en un bloque try-catch?. 1. 2. 3. Todos los que necesitemos, uno por excepción controlada. Para crear una excepción propia deberemos: Crear una nueva clase y hacer que implemente Exception. Crear una nueva clase y hacer que herede de Exception, sin importar su nombre. Crear una nueva clase y hacer que herede de Exception, siendo recomendable que su nombre termine en Exception. En Java no podemos crear excepciones propias, sino que debemos trabajar con las que nos propone el propio lenguaje. ¿Qué excepción provoca un array cuando intentamos acceder a una posición no válida?. IndexOfBoundsException. Exception. ArithmeticException. NullPointerException. ¿Qué excepción provoca que cuando tengamos que leer un dato entero introduzcamos una cadena?. NullPointerException. InputMismatchException. DatoMalIntroducidoException. ArithmeticException. Los errores en tiempo de ejecución: Son los errores que tendremos cuando se ejecuta el programa y, por ejemplo, intentamos obtener un elemento de una posición no válida de un array. Son los errores que tendremos que cuando escribimos el código, avisándonos de ello el propio compilador. En Java no hay distinción de errores. Tanto a como b son ciertas. Si queremos abrir un fichero en modo lectura y no tenemos permiso, ¿qué excepción se lanzará?. Exception. IOException. FileNotFoundException. NullPointerException. ¿Cuál de las siguientes excepciones utilizaremos en el tratamiento de ficheros?. NullPointerException. FileNotFoundException. IndexOfBoundException. FileException. ¿Cuándo se ejecutará el bloque finally?. Después de que se ejecute el bloque try. Después de que se ejecute el catch. Después de que se ejecuten los bloques try y catch. Habrá que llamarlo expresamente. La clase BufferedReader la podemos utilizar en: Solo en la lectura de ficheros de texto. Solo en la lectura de ficheros binarios. Tanto en la lectura de ficheros de texto como en la lectura de ficheros binarios. Tanto en la escritura de ficheros de texto como en la escritura de ficheros binarios. Si queremos serializar objetos: No hace falta hacer nada especial. Deberemos implementar la interfaz Serializable en las clases que queramos serializar sus objetos. La clase File ya dispone de un método writeObject que lo hace automático. No se pueden escribir objetos, se tienen que escribir uno a uno todos sus atributos. Para la escritura de objetos se necesitan las siguientes clases. FileOutputStream y ObjectOutputStream. FileInputStream y ObjectInputStream. ObjectInputStream. ObjectOutputStream. La API JAXB se utiliza con ficheros. XSD. DTD. JSON. XML. Para identificar la versión del programa se emplea. El atributo serialVersionUID. El nombre del programa. El fichero .class del programa. El nombre del fichero. Para indicar que un atributo no se serialice, empleamos el modificador. private. transient. uid. protected. Cuando escribimos en un fichero: Se sobrescribirá la información. Podremos escribir la final solo si es binario. Podremos escribir al final sea de texto o binario. Podremos escribir al final solo es de texto. Los pasos para operar con ficheros son: Abrir, operar y cerrar. Abrir, comprobar que se ha abierto correctamente, operar y cerrar. Operar y cerrar. Abrir y cerrar. Para la lectura de objetos serializados se necesita _______. ObjectInputStream. FileOutputStream y ObjectOutputStream. FileInputStream y ObjectInputStream. ObjectOutputStream. El ciclo de vida del software ________. Termina una vez que sacamos el producto a producción. Termina cuando se decide retirar el producto. Es inexistente. Siempre se mueve hacia delante, nunca vuelve a fases anteriores. La fase de planificación ________. Es opcional. Solo se incorpora en ciclos de vidas extendidos. Debe ser de las primeras fases a considerar. Es poco relevante, no afecta al producto. El despliegue de un sistema ________. Tiene en cuenta el desarrollo. Se centra en realizar pruebas. Se centra en el proceso de instalación. Considera la fase de análisis. La depuración ________. Permite observar detalles de la planificación. Siempre se realiza con trazas. Puede requerir la utilización de software dedicado. Es poco útil en la actualidad. ¿Cuál es la principal función de un depurador?. Optimizar el rendimiento del código automáticamente. Permitir la ejecución paso a paso y la inspección de variables. Compilar el código fuente a lenguaje máquina. Generar documentación técnica del programa. La fuera bruta ________. Es una técnica muy costosa. Es una técnica muy eficiente. Nunca se aplica en la actualidad. Solo se utiliza en el campo de pruebas de software. Las pruebas de caja blanca ________. Son poco útiles en la actualidad. Son poco costosas. Se utilizan de forma aislada. Requieren que el programador conozca el código fuente. Las pruebas de caja negra ________. Están muy limitadas. No tienen sentido en la actualidad. Son más efectivas si el programador no conoce el código. Solo valen para pruebas internas. La utilización de pruebas ________. Permite guiar el proceso de desarrollo. Es poco útil para el proceso de desarrollo. Puede introducir errores en el código. Ninguna de las anteriores es correcta. La calidad del software________. Es independiente del proceso de pruebas. Es poco relevante para el usuario. Puede mejorar con la utilización de pruebas. Carece de importancia en cualquier metodología de desarrollo. ¿Cuál de las siguientes colecciones no admite elementos repetidos?. ArrayList. HashLinkedMap. LinkedList. TreeSet. Los métodos de la interfaz Set. Son los mismos que los de List. Son los mismos que los de Collection. Son implementados en la clase ArrayList. Esta interfaz no tiene métodos. Si en un TreeSet insertamos los siguientes valores: 2, 0, 7, 6, ¿cómo aparecerán al mostrarlo por pantalla?. 2, 0, 7, 6. 0, 2, 7, 6. 0, 2, 6, 7. 7, 6, 2, 0. ¿Cuál de las siguientes definiciones no es correcta?. ArrayList<String> array = new ArrayList<>();. ArrayList<Boolean> array = new ArrayList<>();. ArrayList<ArrayList<Integer>> array = new ArrayList<>();. ArrayList<int> array = new ArrayList<>();. ¿Cuándo podemos invocar al método remove de los iteradores?. En cualquier momento. Después de usar next(). Después de usar hasNext(). Es mejor eliminar los elementos de las colecciones mediante el método delete, ya que es más seguro. Los tipos genéricos sirven para. Usar objetos de la clase Object. Usar variables primitivas. Usar tipos parametrizados. No tener que usar ningún tipo. El bucle for-each: Nos permite recorrer una colección de forma segura y sencilla. Este tipo de bucle no existe en Java, sino que es propio de Python. Es un bucle for encubierto. Solo se puede utilizar en colecciones que tengan almacenados datos de tipo String. ¿Cuántos tipos genéricos puede tener una clase genérica en su declaración?. Todos los que haga falta. El máximo que se pueden usar en una clase son 3. El máximo que se pueden usar en una clase son 2. El máximo que se pueden usar en una clase es 1. ArrayList y LinkedList se diferencian: En el número de elementos. En el rendimiento. En el orden de los elementos. En nada. ¿Qué tipo de dato no se puede usar con los genéricos?. String. Double. char. Persona. ¿Cómo distribuye los elementos el GridLayout?. Los ordena en 5 partes, norte, sur, este y oeste. Los alinea en el centro del panel. Los maqueta en forma de matriz. No existe el layout FlowLayout. ¿Qué biblioteca utilizamos en Java para la creación de la interfaz gráfica?. SDL. WxPython. AWT. Swing. Las ventanas son objetos de la clase: JFrame. JLabel. JWindow. Frame. ¿Cuál de los siguientes no es un Layout?. BorderLayout. StaticLayout. FlowLayout. GridLayout. ¿Cómo se le puede agregar el evento actionPerformed a un JButton?. Solo haciendo doble click sobre el botón. Solo desde el panel de eventos del botón. Solo pulsando botón derecho sobre el botón y seleccionando el evento. O bien haciendo doble click sobre el botón o desde el panel de eventos. ¿Cómo distribuye los elementos el FlowLayout?. Los ordena en 5 partes, norte, sur, este y oeste. Los alinea en el centro del panel. Los maqueta en forma de matriz. No existe el layout FlowLayout. ¿Qué evento se lanzará cuando pulsemos sobre un menú?. clickedMenu. actionPerformed. menuPerformed. singleClickMenu. ¿Qué clase se utiliza para crear las ventanas de diálogo predefinidas?. JOptionPane. JFrame. JPanel. JPredefined. La clase JMenuItem: Esta clase representa un menú concreto. Esta clase representa un ítem de un menú, al que le podremos dar funcionalidad. Esta clase representa un ítem de un menú, pero mostrará un radiobutton en él. Esta clase representa un ítem de un menú, pero mostrará un checkbox en él. La clase JRadioButtonMenuItem: Esta clase representa un menú concreto. Esta clase representa un ítem de un menú, al que le podremos dar funcionalidad. Es un ítem de menú que actúa como un botón de radio (radio button). Esta clase representa un ítem de un menú, pero mostrará un checkbox en él. La clase Statement: Es la clase que nos permitirá instanciar objetos donde se almacenará nuestra conexión. Es la clase que nos permitirá instanciar objetos que utilizaremos para realizar las consultas SQL. Es la clase que nos permitirá instanciar objetos que nos devolverán los resultados de las consultas SQL. Es la excepción propia de SQL. La excepción que se lanza cuando se ejecuta una consulta INSERT es: SQLException. InsertException. NotInsertedException. Exception. El método executeQuery devuelve: La cantidad de filas que han sido afectadas por la consulta ejecutada. Verdadero o falso, según se haya ejecutado correctamente o no. No devuelve nada, sabremos que no se ha ejecutado bien si se lanza una excepción. Devuelve un ResultSet con los datos devueltos por la consulta ejecutada. ¿Cuántas claves primarias puede tener cada fila en una tabla?. 1. 2. 3. 4. ¿Cuál de las siguientes sentencias INSERT no es correcta?. INSERT INTO persona (DNI, nombre, apellidos) VALUES (‘147A', ‘Pepe’, ‘López’). INSERT INTO persona (DNI, nombre, apellidos) VALUES (‘147A', ‘Pepe’, ‘Lopez’). INSERT INTO persona (DNI, nombre, apellidos) VALUES (‘147A', ‘López’, ‘Pepe’). INSERT INTO persona (DNI, nombre, apellidos) VALUES (147A, ‘Pepe’, ‘López’). La clase SQLException: Es la clase que nos permitirá instanciar objetos donde se almacenará nuestra conexión. Es la clase que nos permitirá instanciar objetos que utilizaremos para realizar las consultas SQL. Es la clase que nos permitirá instanciar objetos que nos devolverán los resultados de las consultas SQL. Es la excepción propia de SQL. La clase ResultSet: Es la clase que nos permitirá instanciar objetos donde se almacenará nuestra conexión. Es la clase que nos permitirá instanciar objetos que utilizaremos para realizar las consultas SQL. Es la clase que nos permitirá instanciar objetos que nos devolverán los resultados de las consultas SQL. Es la excepción propia de SQL. ¿En qué punto hay que cerrar la conexión a la base de datos?. Dentro del bloque try. Dentro del bloque catch. Fuera del bloque try catch. Dentro del bloque finally. ¿Qué instrucción no ejecuta el método executeUpdate?. SELECT. INSERT INTO. DELETE. UPDATE. ¿Qué ocurre si no ponemos el WHERE en la instrucción DELETE FROM?. Lanza una SQLException ya que está mal la sintaxis. Borra todos los elementos de la tabla. Borra la tabla. Se ejecuta, pero no tiene efecto. El Modelo Vista-Controlador: Es un patrón que se usaba al inicio del desarrollo de software, pero ya no se usa porque está anticuado. Es un patrón que divide nuestro proyecto en tres partes y que es ampliamente usado hoy en día. Es un patrón de diseño de software pero solo en ámbitos web, no pudiendo utilizarlo para crear programas de escritorio o apps móviles. Es un patrón de diseño de software pero solo en ámbito de programas de escritorio o apps móviles, no pudiendo utilizarlo en ámbitos web. ¿Cuál es una práctica recomendada para mitigar la inyección SQL en Java?. Utilizar consultas SQL dinámicas concatenando cadenas de texto con datos proporcionados por el usuario. Permitir cualquier tipo de dato proporcionado por el usuario sin validación. Utilizar consultas parametrizadas o preparadas con PreparedStatement. Ignorar la longitud y los caracteres especiales en los datos de entrada del usuario. ¿Qué método se utiliza para verificar si el cursor está colocado justo delante de la primera fila en un ResultSet?. isFirst(). isBeforeFirst(). isLast(). isAfterLast(). ¿Qué interfaz en Java se utiliza para implementar las sentencias parametrizadas?. Statement. CallableStatement. PreparedStatement. ResultSet. ¿En qué punto hay que cerrar la conexión a la base de datos orientada a objetos cuando tenemos tipos de datos estructurados?. Dentro del bloque try. Dentro del bloque catch. Fuera del bloque try catch. Dentro del bloque finally. ¿Cuál de las siguientes vulnerabilidades es una de las más comunes en las aplicaciones que interactúan con bases de datos?. Cross-Site Scripting (XSS). Inyección SQL. Fuga de memoria. Ataque de intermediario (Man-in-the-Middle). ¿Qué es una inyección SQL?. Una técnica para mejorar el rendimiento de las consultas SQL. Una vulnerabilidad de seguridad que permite a los atacantes ejecutar comandos SQL no autorizados. Un método para encriptar datos en una base de datos. Una forma de hacer que las consultas SQL sean más eficientes. ¿Cuál es el papel principal del controlador en el patrón MVC?. Presentar los datos al usuario. Almacenar y manipular los datos. Actuar como intermediario entre el modelo y la vista. Diseñar la interfaz de usuario. ¿Cuál de los siguientes componentes del patrón MVC se encarga de representar la lógica de negocio y los datos de la aplicación?. Modelo. Vista. Controlador. ActionListener. ¿Cuál de los siguientes métodos se utiliza para mover el cursor al siguiente registro en un ResultSet?. first(). next(). previous(). absolute(int row). ¿Qué técnica de persistencia introduce métodos como save(), read() y update(), pero puede romper la abstracción al mezclar la lógica de negocio con la de acceso a datos?. Persistencia nativa. DAO. Framework de persistencia: JPA. Hibernate. ¿Qué patrón se encarga de separar la lógica de negocio de la lógica de acceso a los datos, proporcionando una interfaz entre ellas y facilitando el mantenimiento del código?. Persistencia nativa. DAO. JPA. Spring Data. ¿Qué enfoque de persistencia está diseñado para manejar los objetos Java de manera más natural, utilizando una especificación que unifica diferentes implementaciones?. Persistencia nativa. DAO. JPA. Spring Framework. ¿Qué requisito incumple que una clase Java pueda ser convertida en una entidad JPA?. Tener dependencias externas para su funcionamiento. Implementar la interfaz Serializable. Tener métodos getter y setter para todos sus atributos. Tener un constructor vacío (sin argumentos). ¿Cuál de las siguientes anotaciones se utiliza para indicar que una clase Java es una entidad que puede ser almacenada en la base de datos con JPA?. @Entity. @Table. @Persistent. @PersistentEntity. ¿Qué anotación se utiliza para marcar un atributo como la clave primaria de una entidad en JPA?. @PrimaryKey. @Id. @Key. @Primary. ¿Cómo se obtiene una instancia de EntityManager en JPA?. Utilizando el método getInstance() de EntityManagerFactory. Utilizando el operador new para crear una nueva instancia. A partir del método createEntityManager() de EntityManagerFactory. Directamente mediante la anotación @PersistenceContext. ¿Cuál es la relación entre EntityManagerFactory y EntityManager en JPA?. EntityManagerFactory crea y mantiene instancias de EntityManager, que realizan operaciones de persistencia. EntityManagerFactory define las relaciones entre las entidades, mientras que EntityManager realiza las consultas SQL. EntityManagerFactory y EntityManager son intercambiables y pueden utilizarse indistintamente en una aplicación JPA. EntityManager crea y configura instancias de EntityManagerFactory para cada operación de persistencia. ¿Cuál de las siguientes afirmaciones describe mejor JPQL (Java Persistence Query Language)?. JPQL opera directamente sobre tablas y columnas de la base de datos. JPQL permite realizar consultas utilizando entidades y atributos de objetos Java. JPQL es exclusivo para bases de datos NoSQL. JPQL es específico de un proveedor y no es portable entre diferentes bases de datos. ¿Qué método se utiliza para obtener múltiples resultados de una consulta JPQL en JPA?. getResult(). getSingleResult(). getResultList(). executeQuery(). |





