Test de ensayo
1. Desea que las subclases en cualquier paquete tengan acceso a los
miembros de una superclase. ¿Cuál es el acceso más restrictivo que
logra este objetivo?
A. public.
B. private
C. protected
D. transient
Explanation:
Access modifiers dictate which classes, not which instances, may access features.
Methods and variables are collectively known as members. Method and variable members are
given access control in exactly the same way.
private makes a member accessible only from within its own class
protected makes a member accessible only to classes in the same package or subclass of
the class
default access is very similar to protected (make sure you spot the difference) default access
makes a member accessible only to classes in the same package.
public means that all other classes regardless of the package that they belong to, can access
the member (assuming the class itself is visible)
final makes it impossible to extend a class, when applied to a method it prevents a method
from being overridden in a subclass, when applied to a variable it makes it impossible to
reinitialise a variable once it has been initialised
abstract declares a method that has not been implemented.
transient indicates that a variable is not part of the persistent state of an object.
volatile indicates that a thread must reconcile its working copy of the field with the master
copy every time it accesses the variable.
After examining the above it should be obvious that the access modifier that provides the most
restrictions for methods to be accessed from the subclasses of the class from another package
is C - protected. A is also a contender but C is more restrictive, B would be the answer if the
constraint was the "same package" instead of "any package" in other words the subclasses
clause in the question eliminates default.
public class Outer
{
public void someOuterMethod()
{
//Line 5
}
public class Inner { }
public static void main(String[] argv)
{
Outer ot = new Outer();
//Line 10
}
}
2. ¿Cuál de los siguientes fragmentos de código insertados permitirá
compilar?
A. new Inner(); //At line 5
B. new Inner(); //At line 10
C. new ot.Inner(); //At line 10
D. new Outer.Inner(); //At line 10
Explanation:
Option A compiles without problem.
Option B gives error - non-static variable cannot be referenced from a static context.
Option C package ot does not exist.
Option D gives error - non-static variable cannot be referenced from a static context.
interface Base
{
boolean m1 ();
byte m2(short s);
}
1. interface Base2 implements Base {}
2. abstract class Class2 extends Base
{ public boolean m1(){ return true; }}
3. abstract class Class2 implements Base {}
4. abstract class Class2 implements Base
{ public boolean m1(){ return (7 > 4); }}
5. abstract class Class2 implements Base
{ protected boolean m1(){ return (5 > 7) }}
3. ¿Qué dos fragmentos de código compilarán?
A. 1y2
B. 2y3
C. 3y4
D. 1y5
Explanation:
(3) is correct because an abstract class doesn't have to implement any or all of its interface's
methods. (4) is correct because the method is correctly implemented ((7 > 4) is a boolean).
(1) is incorrect because interfaces don't implement anything. (2) is incorrect because classes
don't extend interfaces. (5) is incorrect because interface methods are implicitly public, so the
methods being implemented must be public.
public class Test { }
4. ¿Cuál es el prototipo del constructor predeterminado?
A. Test( )
B. Test(void)
C. public Test( )
D. public Test(void)
Explanation:
Option A and B are wrong because they use the default access modifier and the access
modifier for the class is public (remember, the default constructor has the same access
modifier as the class).
Option D is wrong. The void makes the compiler think that this is a method specification - in
fact if it were a method specification the compiler would spit it out.
5. ¿Cuál es el modificador de acceso más restrictivo que permitirá a los
miembros de una clase tener acceso a miembros de otra clase en el
mismo paquete?
A. public
B. abstract
C. protected
D. synchronized
E. default access
Explanation:
default access is the "package oriented" access modifier.
Option A and C are wrong because public and protected are less restrictive. Option B and
D are wrong because abstract and synchronized are not access modifiers.
6. ¿Cuál de las siguientes es / son declaraciones de métodos legales?
1. protected abstract void m1();
2. static final void m1(){}
3. synchronized public final void m1() {}
4. private native void m1();
A. 1y3
B. 2y4
C. Sólo el 1
D. Todos ellos son declaraciones legales.
Explanation:
All the given statements are legal declarations.
7. ¿Cuál de las siguientes declaraciones causa un error de compilación?
A. int[ ] scores = {3, 5, 7};
B. int [ ][ ] scores = {2,7,6}, {9,3,45};
C. String cats[ ] = {"Fluffy", "Spot", "Zeus"};
D. boolean results[ ] = new boolean [] {true, false, true};
E. Integer results[ ] = {new Integer(3), new Integer(5), new Integer(8)};
Explanation:
Option B generates a compiler error: <identifier> expected. The compiler thinks you are trying
to create two arrays because there are two array initialisers to the right of the equals, whereas
your intention was to create one 3 x 3 two-dimensional array.
To correct the problem and make option B compile you need to add an extra pair of curly
brackets:
int [ ] [ ] scores = { {2,7,6}, {9,3,45} };
void start() {
A a = new A();
B b = new B();
a.s(b);
b = null; /* Line 5 */
a = null; /* Line 6 */
System.out.println("start completed"); /* Line 7 */
}
8. ¿Cuándo es el objeto B, creado en la línea 3, elegible para la
recolección de basura?
A. Después de la línea 5
B. Después de la línea 6
C. Después de la línea 7
D. No hay forma de estar absolutamente seguro.
Explanation:
No answer description available for this question.
class Bar { }
class Test
{
Bar doBar()
{
Bar b = new Bar(); /* Line 6 */
return b; /* Line 7 */
}
public static void main (String args[])
{
Test t = new Test(); /* Line 11 */
Bar newBar = t.doBar(); /* Line 12 */
System.out.println("newBar");
newBar = new Bar(); /* Line 14 */
System.out.println("finishing"); /* Line 15 */
}
}
9. ¿En qué punto es el objeto Bar, creado en la línea 6, elegible para la
recolección de basura?
A. Después de la línea 12
B. Después de la línea 14
C. Después de la línea 7, cuando doBar() termina
D. Después de la línea 15, cuando main() termina
Explanation:
Option B is correct. All references to the Bar object created on line 6 are destroyed when a
new reference to a new Bar object is assigned to the variable newBar on line 14. Therefore
the Bar object, created on line 6, is eligible for garbage collection after line 14.
Option A is wrong. This actually protects the object from garbage collection.
Option C is wrong. Because the reference in the doBar() method is returned on line 7 and is
stored in newBar on line 12. This preserver the object created on line 6.
Option D is wrong. Not applicable because the object is eligible for garbage collection after line
14.
class Test
{
private Demo d;
void start()
{
d = new Demo();
this.takeDemo(d); /* Line 7 */
} /* Line 8 */
void takeDemo(Demo demo)
{
demo = null;
demo = new Demo();
}
}
10.¿Cuándo es elegible el objeto Demo para la recolección de basura?
A. Después de la línea 7
B. Después de la línea 8
C. Cuando finaliza el método start
D. Cuando la instancia que ejecuta este código es elegible para la recolección de
basura.
Explanation:
Option D is correct. By a process of elimination.
Option A is wrong. The variable d is a member of the Test class and is never directly set to
null.
Option B is wrong. A copy of the variable d is set to null and not the actual variable d.
Option C is wrong. The variable d exists outside the start() method (it is a class member).
So, when the start() method finishes the variable d still holds a reference.
11.En el SGBD Oracle. ¿Cuál de las siguientes afirmaciones es correcta?
Los usuarios con el rol de administrador de la base de datos son SYS, SYSTEM y
A. cualquier otro usuario al que se le haya otorgado el rol DBA (“Data Base
Administrador”).
B. Un esquema es una colección de usuarios que contienen objetos de este tipo.
Un usuario puede modificar el diccionario de datos de los objetos de su
C.
esquema.
D. una instancia de base de datos se encuentra en una máquina UNIX y los clientes de bases
Si
de datos, es decir, los usuarios o aplicaciones se conectan a ella con un único usuario, pero
desde máquinas UNIX, LINUX y WINDOWS entonces el administrador de la base de datos
definirá este usuario de conexión o usuario de Bases de Datos como ‘externo’.
public class X
{
public static void main(String [] args)
{
X x = new X();
X x2 = m1(x); /* Line 6 */
X x4 = new X();
x2 = x4; /* Line 8 */
doComplexStuff();
}
static X m1(X mx)
{
mx = new X();
return mx;
}
}
12.Después de la línea 8 se ejecuta. ¿Cuántos objetos son elegibles para la
recolección de basura?
A. 0
B. 1
C. 2
D. 3
Explanation:
By the time line 8 has run, the only object without a reference is the one generated as a result
of line 6. Remember that "Java is pass by value," so the reference variable x is not affected by
the m1() method.
13.Los privilegios en el SGBD Oracle son. ¿Cuál de las siguientes
afirmaciones es correcta?
Permisos que se dan a los usuarios tanto sobre objetos del esquema como sobre
A.
el sistema. Estos privilegios, se dan también a los perfiles (“profiles”).
Son tanto privilegios de sistema, como privilegios de objetos de esquema. Estos
B.
son asignados a roles y a usuarios.
Permisos que son manejados a través de los perfiles para limitar el uso de la CPU
C. y para definir políticas sobre la contraseña (caducidad, complejidad de ésta,
etc.).
D. Son un conjunto de permisos agrupados sobre los objetos de la base de datos
que simplifican la gestión de la base de datos. En ningún caso se trata de
permisos sobre el sistema.
14.En relación con las transacciones y su procesamiento. ¿Cuál de las
siguientes afirmaciones es cierta?
Una transacción es una secuencia de operaciones que han de ejecutarse de
A.
forma atómica.
En Oracle, una transacción es una secuencia de sentencias SQL, pero por
B.
mecanismos propios del SGBD no es necesario tratarlo como una única unidad.
C. No existen errores a nivel transacción.
D. Cuando una transacción termina con éxito, las actualizaciones de que consta la
transacción se graban con la sentencia ROLLBACK.
15.En relación con la tarea de controlar la Integridad de la Base de Datos,
en un sistema multiusuario como el SGBD Oracle, ¿Cuál de las
siguientes afirmaciones es correcta?
Para asegurar la integridad, es necesario que las transacciones se puedan
A.
ejecutar de forma serial, una detrás de otra.
Si se ejecutan transacciones simultáneas no es necesario establecer mecanismos
B.
de control de concurrencia para asegurar la consistencia de los datos.
Cuando se ejecutan transacciones usando el modelo de marcas multi-versión de
C.
Oracle, los datos que ven las transacciones son exactamente los mismos.
D. Asegurar la integridad cuando tenemos varias transacciones concurrentes tiene
una desventaja, afecta a la escalabilidad de la Base de Datos.
16.Después de haberse producido un fallo en mitad de procesamiento de
una transacción, el SGBD pasa a restaurar la BD. ¿Cuál de las siguientes
respuestas es cierta?:
Se recuperará la BD en estado inconsistente y habrá habido perdida de
A.
información
Si la BD está en modo NO ARCHIVEDLOG, el SGBD no va a ser capaz de devolver
B.
la BD en estado consistente
El SGBD debe de ser capaz de recuperar cualquier transacción afectada por un
C.
fallo
D. El SGBD fuerza el commit de la transacción, y así devolverá la BD en estado
consistente
17.Optimización y procesamiento de consultas. ¿Cuál de las siguientes
afirmaciones es cierta?
El objetivo de la optimización lógica de una consulta es obtener una expresión en
A.
algebra relacional equivalente, pero cuyo coste de ejecución se estime menor
El objetivo de la optimización física es determinar el hardware necesario para
B.
ejecutar una consulta
El objetivo de la optimización lógica de consultas es determinar si todos los
C.
elementos utilizados en la consulta existen en la base de datos
D. La optimización física se realiza es independiente del esquema de nuestra base
de datos
18.El concepto de transacción en Oracle permite:
A. Prevenir problemas de concurrencia
B. Realizar optimizaciones sobre el diseño físico de la base de datos
C. Permitir la recuperación ante fallos y prevenir problemas de concurrencia
D. Ninguna de las anteriores
19.Se define un rol como:
A. Un conjunto de usuarios
B. Un conjunto de privilegios sobre el sistema
C. Un conjunto de privilegios sobre objetos de esquemas de usuario
D. Un conjunto de privilegios sobre el sistema y/o sobre objetos de esquemas de
usuario
20.¿Cuál de las siguientes afirmaciones es cierta? El diccionario de datos
de una base de datos...
Permite que cualquier usuario de la base de datos pueda realizar operaciones de
A.
modificación directa (mediante UPDATE) sobre él.
B. Almacena la definición de todos los objetos de la BD.
C. Es opcional. Es decir, pueden existir bases de datos sin diccionario de datos.
D. Está almacenado en el tablespace USERS y puede acceder a él cualquier usuario
de la base de datos.
21.¿Cuáles son las fases genéricas de un proyecto de software?
A. Desarrollo, corrección y mantenimiento.
B. Desarrollo y mantenimiento.
C. Definición, desarrollo y mantenimiento.
D. Definición, desarrollo y corrección.
22. ¿Cuándo es recomendable el uso de prototipos durante la fase de
análisis?
El cliente está seguro de los requisitos del sistema y éstos son estables y sin
A.
ambigüedades
No se dispone de recursos económicos para obtener unos requisitos fiables de otra
B.
forma
La complejidad de la aplicación a desarrollar es muy alta y no se puede desarrollar
C.
por módulos.
D. No tiene otra manera de obtener eficazmente los requisitos.
23.¿Cómo se realiza el modelado de datos, en la fase de análisis?
A. Se realiza mediante la construcción de diagramas Entidad-Relación
B. Se realiza mediante la construcción de un Diccionario de Datos
C. Se realiza mediante la construcción de diagramas de Flujo de Datos
D. Se realiza el estudio de los datos conjuntamente con los procesos que transforman
dichos datos
24.¿Qué es la gestión de un proyecto de software?
Es el proceso donde se define la metodología de desarrollo y los lenguajes de
A.
programación a ser utilizados en el desarrollo de un software
B. Es el proceso donde se evalúa las fases de desarrollo y el equipo de programación
Es el proceso donde se gestionan todas las actividades como el tiempo, costos y
C.
calidad que se dan en el desarrollo de un software
D. Es el proceso donde se gestiona los procesos para realizar pruebas e
implementación de un proyecto de software
25. ¿Qué son los requisitos no funcionales?
Son las características relacionadas con la seguridad, interoperabilidad, costos entre
A.
otras para el desarrollo del proyecto de software
B. Son las características esperadas por los usuarios del proyecto de software
Son las funciones asignadas al programador para el desarrollo del proyecto de
C.
software
D. Son las actividades esperadas por el jefe del proyecto de software en la etapa de
desarrollo
26.Se requiere modelar las interacciones entre los actores y los objetos de
un proyecto de software. ¿Cuál es diagrama recomendado para este
fin?
A. Diagramas de estado
B. Diagrama de casos de uso
C. Diagramas de secuencia
D. Diagrama de clases
27.¿Que son los requisitos funcionales?
A. Son las características esperadas por los usuarios del proyecto de software
Son las funciones asignadas al programador para el desarrollo del proyecto de
B.
software
Son las actividades esperadas por el jefe del proyecto de software en la etapa de
C.
desarrollo
D. Son las características relacionadas con la seguridad, interoperabilidad, costos entre
otras para el desarrollo del proyecto de software
28. ¿Qué es el control de cambios?
Asegura que todos los cambios que se hagan sobre un proyecto de software sean
A.
consistentes y realizados siguiendo normas y regulaciones de la organización
Determinar recursos y valores que permitan realizar el proyecto de software desde
B.
el inicio hasta su finalización
Asegurar que todos los requerimientos funcionales estén bien definidos y cumplan
C.
las expectativas de los usuarios
D. Determinar requisitos funcionales y no funcionales para garantizar la calidad del
proyecto de software
29.¿Qué es JSON?
A. Un lenguaje de programación orientado a objetos basado en JavaScript
B. Un servidor de aplicaciones web multiplataforma basado en JavaScript
C. Un formato ligero para el intercambio de datos dinámicos utilizado en JavaScript
D. Un estándar para aplicaciones web basado en JavaScript
30.¿Qué tipo de lenguaje de programación es JavaScript?
A. Basado en objetos
B. Orientado a objetos
C. Estructurado con objetos
D. Orientado a servicios
31.En un sistema de reservación de vuelos, ¿Cuál de los siguientes
requerimientos es funcional?
El usuario debe tener la posibilidad de buscar por fecha del vuelo, tipo de vuelo,
A.
disponibilidad de asientos y costos de vuelos
El sistema debe funcionar correctamente en cualquier navegador
B.
independientemente de la plataforma
El sistema no debe tardar más de cinco segundos en mostrar los resultados de una
C.
búsqueda
32. Un establecimiento educativo desea contratar una empresa
desarrolladora de software para que se diseñe una aplicación que
permita el registro de los estudiantes a su centro de cómputo. Como
antecedentes se tiene que es una aplicación pequeña, y que el tiempo
de plazo para su desarrollo puede ser largo. Además, se debe aclarar
que el presupuesto con el que cuenta la institución es modesto. ¿Qué
metodología recomendaría para desarrollar el proyecto de software?
A. Metodología SCRUM o XP
B. Metodología RUP
C. Metodología en espiral o cascada
D. Metodología personalizada
33.Los casos de uso se caracterizan por:
A. Mostar la forma en que los objetos se comunican entre sí al transcurrir el tiempo
B. Describir una iteración entre los usuarios y el sistema
C. Permitir visualizar las relaciones entre las clases que involucran el sistema
D. Describir las funciones de cada una de las clases y módulos del sistema
34.El rector de la UC, solicita que se cree un sistema íntegro que gestione
todas las funciones para la entidad universitaria. Como el proyecto se
compone de algunos sistemas independientes que luego se
relacionarán entre sí, y como el rector necesita que se muestren
avances periódicos del mismo para tomar respectivas correcciones si
las hubiera. ¿Cuál debería ser la metodología óptima para el proyecto?
A. Metodología SCRUM
B. Metodología XP
C. Metodología en espiral o cascada
D. Metodología personalizada
35.Un auditor de sistemas de información está revisando el proceso de
desarrollo de software en una organización. ¿Cuál de las siguientes
funciones sería adecuado que realicen los usuarios finales?
A. Pruebas de salida del programa
B. Configuración del sistema
C. Especificaciones de la lógica del programa
D. Optimización del rendimiento
36.¿Cuál es una de las características de las métricas de calidad en un
proyecto de software?
Proporciona una indicación de cómo se ajusta el software a los requerimientos
A.
implícitos y explícitos del cliente
B. Se centra en el rendimiento del proceso de la ingeniería de software
Se centra en las características del software más que en el proceso por el cual ha sido
C.
desarrollado
D. Proporciona valores de calidad del proceso en base a las pruebas obtenidas antes de la
implementación
37. ¿Qué es la gestión de configuración del software?
Es el conjunto de actividades desarrolladas para gestionar los cambios a lo largo del
A.
proyecto de software.
Es un conjunto de actividades propuestas para gestionar los cambios al inicio del
B.
proyecto de software.
Es un conjunto de actividades implementadas para gestionar y verificar los cambios al
C.
inicio del proyecto de software.
D. Es un conjunto de actividades desarrolladas para verificar los cambios y pruebas antes
de ser implementado el proyecto de software
38.¿Cuál es una característica de las métricas orientadas al tamaño en un
proyecto de software?
Se utilizan para obtener medidas directas del resultado y la calidad de la ingeniería de
A.
software.
Son medidas indirectas del software y del proceso por el cual se desarrollará y se
B.
verificará la funcionalidad del proyecto de software
Se consigue información sobre la forma en que la gente desarrolla software y sobre el
C.
punto de vista humano de la efectividad de las herramientas y métodos
D. Proporcionan una indicación de ajustes del software a los requerimientos implícitos y
explícitos del cliente
39.¿A qué se considera la seguridad en bases de datos?
A. A la protección de las bases de datos frente a usuarios no autorizados
A la protección de la información de las bases de datos a usuarios con o sin
B.
autorización
C. A el acceso de forma restringida a los roles de los usuarios de la base de datos
D. A la protección de perfiles y roles de usuarios que pertenecen a las aplicaciones
40.¿Cuál es una buena práctica para la realización de las pruebas de
proyectos de software?
Realizar las pruebas de los nuevos programas o cambios en un entorno de pruebas
A.
separado físicamente del de la producción
Crear un entorno de pruebas en una máquina independiente con las mismas
B.
características de la máquina de producción
Realizar pruebas de los nuevos programas o cambios en el mismo entorno de
C.
producción con las seguridades necesarias
D. Crear respaldos de los datos de la máquina de producción y realizar las pruebas en otro
equipo sin necesidad de estar separados físicamente