Está en la página 1de 7

Sistemas Examen Java

EVALUACIÓN JAVA
Nombre:
Fecha:
1. Dadas las siguientes definiciones, escriba el concepto de Programación Orientada a Objetos al cual hacen
referencia.
a. Técnica en la que una clase es una extensión de otra, es decir, como si tomara las características de otra
clase y además tiene algún tipo de características propias que la distinguen.
Herencia
b. Técnica en la que una clase se compone o contiene instancias de otras clases.
Objeto
c. Un mismo Objeto puede tomar diversas formas.
Polimorfismo

a. Garantiza que una clase sólo tenga una instancia y proporciona un punto de acceso ( b ) Método abstracto
global a ella.
b. Declarado en una clase para el cual esa clase no proporciona implementación. ( a ) Patrón de diseño
Singleton
c. Contiene al menos un método abstracto. Puede implementar métodos completos o ( c ) Clase Abstracta
partes de ellos que luego heredarán sus subclases, además de poder definir
atributos.
d. No puede definir nada acerca de la forma de las clases que la implementen, sólo los ( e ) Instancia
servicios que éstas deberán implementar, y no puede definir atributos (sólo statics
y finals).
e. Es crear un objeto y hacer referencia a los métodos. ( d ) Interface
f. Método con el cual se permite obtener el carácter de una cadena. ( i ) IndexOf
g. Método que determina si una cadena empieza con una secuencia de caracteres. ( i ) NextToken
h. Método que se utiliza para añadir al final de una cadena en la clase Stringbuffer. ( h ) Append
i. Método que permiten localizar caracteres en cadenas y subcadenas. ( g ) StartsWith
j. Método que se utiliza para obtener las subcadenas en la clase Stringtokenizer. ( f ) CharAt
2. Relaciona ambas columnas, colocando en el paréntesis la letra correspondiente.

3. Considerando el siguiente código, relaciona ambas columnas, colocando en el paréntesis la letra correspondiente.
class Ejecutivo extends Empleado {
int presupuesto;
void asignarPresupuesto(int p) {
presupuesto = p;
}
}
a. Clase Base ( b ) Empleado
b. Clase Derivada ( d ) presupuesto
c. Método ( a ) Ejecutivo
d. Atributo o propiedad ( c ) asignarPresupuesto
e. Parámetro ( g ) void
f. Tipo de dato ( e ) p
g. Indica a una función que no devuelva parámetros ( f ) int

3. Patrón de arquitectura de software que separa los datos de una aplicación, la interfaz de usuario, y la lógica de
negocio en tres componentes distintos.
a) Singleton
b) Modelo Vista Controlador (MVC)
c) Gang Of Four
d) Facade

4. ¿Cuál de las siguientes opciones no pertenece a un modificador de acceso?


a) private
b) final

Confidencial Página 1 de 7
Sistemas Examen Java

c) protected

d) public

5. Considerando el siguiente código, indique cual es la línea donde se ejecuta el constructor de la clase Base.
Ejecutivo (Stringextends
class Ejecutivo n, int s)Empleado {
int presupuesto;
Ejecutivo (String n, int s) {
super(n,s);
}
void asignarPresupuesto(int p) {
presupuesto = p;
}
public String toString() {
String s = super.toString();
s = s + " Presupuesto: " + presupuesto;
return s;
}
}
a)
b) super.toString()
c) super(n,s)
d) class Ejecutivo extends Empleado {

6. ¿Cuál de las siguientes afirmaciones es falsa acerca de las variables estáticas de una clase Java?
a) Son compartidas por todas las instancias de esta clase
b) Una variable estática puede tener un valor distinto para cada instancia de la
clase
c) Cada instancia de esta clase, puede manipularlas de distinta manera
d) Pueden ser accedidas sin necesidad de instanciar un objeto de la clase

7. ¿Cuáles son los errores que presenta el siguiente código que impiden su ejecución?
public class A{
private final int at = 5;
public static int met(){
return at;
}
public void met(){
System.out.println(at++);
}
}
a) Los nombres de los métodos deben ser diferentes.
b) El atributo at debe ser declarado como static.
c) Para incrementar el atributo at se debe eliminar el modificador final.
d) Todas las anteriores.

8. ¿Cuál será el resultado que imprima en consola?


public class PruebaContador { public class Contador {
private Contador c; private int valor;
public void comenzar(){ public Contador(int v){
c = new Contador(1); valor = v;
this.setContador(c); } }
public void setContador(Contador c){
c = null; public int getContador(){
c = new Contador(3); } return valor;
public int getContadorPc(){ }
return c.getContador(); }
public static void main(String args[]){ }
PruebaContador contador = new PruebaContador();
System.out.println("C: "+ contador.getContadorPc());
} }
a) b) Ocurrirá java.lang.NullPointerException
Confidencial Página 2 de 7
Sistemas Examen Java

c) d) C: 3
e) f) C: 1
g) h) C: 23
9. Defina los siguientes conceptos: JNDI, JMS, XML, JDBC, JTA y EJB.

10. ¿Cuáles son los tipos de EJB existentes?


a) Session EJB's y Entity EJB's
b) EJB’s Container
c) Messaging EJB's
d) a y c

11. Es parte de la especificación JDBC y es el medio para obtener una conexión, puede verse como una fábrica de
conexiones.
a) DNS
b) JNDI
c) Data Source
d) Pool de conexiones

12. Aplicación que puede ser descrita, publicada, localizada e invocada a través de una red, generalmente Internet. Su
modelo está basado en tecnologías como SOAP, WSDL y UUDI.
a) Web Service
b) Binding
c) Api UDDI
d) Comunicación de SOAP

13. Se está creando una aplicación Web con explotación de datos de diversas Bases de datos, y se decide usar un pool
de conexiones para cada base de datos. Para realizar esto, ¿Qué patrón podría aplicar?
a) Abstract factory
b) Prototype
c) Builder
d) Singleton

14. Está diseñando un sistema complejo de clases que proporcione un marco seguro para el usa de otros
programadores. La idea detrás de este marco es que permitirá que otros programadores escriban programas
seguros sin las complejidades de escribir estas aplicaciones seguras. ¿Qué clase de patrón de diseño se está
utilizando aquí?
a) Composite
b) Facade
c) Decorator
d) Adapter

15. ¿Cuál de los siguientes elementos del descriptor de despliegue debe el proveedor del Bean usar para declarar una
referencia de bean que el proveedor está usando para obtener accedo al home del enterprise bean?
a) <env-entry>
b) <ejb-ref>
c) <resource-ref>
d) <ejb-link>

16. Considere el siguiente código HTML:


<html><body>
<a href="/servlet/HelloServlet">POST</a>
</body></html>
¿Qué método de HelloServlet se invoca cuando se hace clic en el hipervínculo que aparece
en el texto anterior?
a) doGet
b) doPost
c) doForm

Confidencial Página 3 de 7
Sistemas Examen Java

d) doHref
e) serviceGet

17. Considere el siguiente código del método doGet() :


public void doGet(HttpServletRequest req,
HttpServletResponse res)
{
PrintWriter out = res.getWriter);
out.println("<html><body>Hello</body></html>");
//1
if(req.getParameter("name") == null)
{
res.sendError(HttpServletResponse.SC_UNAUTHORIZED);
}
}

¿Cuál de las siguientes líneas se puede insertar en / / 1 de manera que el código anterior no arroje una excepción?
a) if ( ! res.isSent() )
b) if ( ! res.isCommitted() )
c) if ( ! res.isDone() )
d) if ( ! res.isFlushed() )
e) if ( ! res.flush() )

18. ¿Cuál de las siguientes líneas inicializa la variable out para el envío de un Archivo de Microsoft Word en el
navegador?
a) PrintWriter out = response.getServletOutput();
b) PrintWriter out = response.getPrintWriter();
c) OutputStream out = response.getWriter();
d) PrintWriter out = response.getOuputStream();
e) OutputStream out = response.getOuputStream();

19. Usted tiene que enviar un archivo GIF en el navegador. ¿Cuál de las siguientes líneas deben ser llamada después (o
antes) a response.getOutputStream ()?
a) response.setContentType("image/gif"); Antes
b) response.setContentType("image/gif"); Después
c) response.setDataType("image/gif"); Antes
d) response.setDataType("image/gif"); Después
e) response.setStreamType("image/gif"); Antes

20. Considere el siguiente código:


public void doGet(HttpServletRequest req,
HttpServletResponse res) throws IOException
{
if(req.getParameter("switch") == null)
{
//1
}
else
{
//other code
}
}
¿Cuál de las siguientes líneas se puede insertar en / / 1, de modo que la solicitud se dirija a la página
collectinfo.html?
a) req.sendRedirect("collectinfo.html");
b) req.redirect("collectinfo.html");
c) res.direct("collectinfo.html");
d) res.sendRedirect("collectinfo.html");
e) this.sendRedirect("collectinfo.html");

Confidencial Página 4 de 7
Sistemas Examen Java

21. Considere el siguiente código:


public void doGet(HttpServletRequest req,
HttpServletResponse res)
{
HttpSession session = req.getSession();
ServletContext ctx = this.getServletContext();
if(req.getParameter("userid") != null)
{
String userid = req.getParameter("userid");
//1
}
}
Usted quiere que el parámetro userid esté disponible sólo para las solicitudes que llegan
desde el mismo usuario. ¿Cuál de las siguientes líneas se inserta en // 1?
a) session.setAttribute("userid", userid);
b) req.setAttribute("userid", userid);
c) ctx.addAttribute("userid", userid);
d) session.addAttribute("userid", userid);
e) this.addParameter("userid", userid);
f) this.setAttribute("userid", userid);

22. ¿Cuál de los siguientes fragmentos de descriptor de despliegue asocia correctamente un servlet que se
implementa mediante una clase llamada com.abc.SalesServletwith?

a) <servlet> <servlet-name> com.abc.SalesServlet </servlet-name> <servlet-class> SalesServlet</servlet-


class></servlet>
b) <servlet> <servlet-name>SalesServlet</servlet-name> <servlet-package> com.abc.SalesServlet </servlet-
package></servlet>
c) <servlet> <servlet-name>SalesServlet</servlet-name> <servlet-class> com.abc.SalesServlet </servlet-
class> </servlet>
d) <servlet name="SalesServlet" class="com.abc.SalesServlet"> <servlet> <servlet-class name="SalesServlet">
com.abc.SalesServlet </servlet-class> </servlet>
e) <servlet> <servlet-name class="com.abc.SalesServlet"> SalesServlet </servlet-name> </servlet>

23. Una aplicación web se encuentra en un directorio llamado ventas. ¿Dónde se encuentra su descriptor de
despliegue?
a) ventas
b) ventas/deployment
c) ventas/WEB
d) ventas/WEB-INF
e) WEB-INF/ventas

24. ¿Qué archivo es el descriptor de despliegue de una aplicación web llamada BankApp?
a) BankApp.xml
b) bankapp.xml
c) server.xml
d) deployment.xml
e) WebApp.xml
f) web.xml

25. ¿Qué método se utiliza para recuperar un atributo de ServletContext?


a) String getAttribute(int index)
b) String getObject(int index)
c) Object getAttribute(int index)
d) Object getObject(int index)
e) Object getAttribute(String name)
f) String getAttribute(String name)
g) String getObject(String name)

26. Considere el contenido de los siguientes dos archivos jsp:


Confidencial Página 5 de 7
Sistemas Examen Java

File 1: test1.jsp
<html><body>
<% pageContext.setAttribute("ninetyNine", new Integer(99)); %>
//1
</body></html>
File 2: test2.jsp
The number is <%= pageContext.getAttribute("ninetyNine") %>

¿Cuál de los siguientes fragmentos se deben colocar en la línea / / 1 en el archivo test1.jsp, para que el archivo
test2.jsp imprima el valor del atributo cuando el archivo test1.jsp es solicitado?
a) <jsp:include page="test2.jsp" />
b) <jsp:forward page="test2.jsp" />
c) <%@ include file="test2.jsp" %>
d) Ninguna de las anteriores ya que los objetos colocados en pageContext tienen el PageScope y no
puede ser compartida con otros componentes.

27. ¿Cuál de las siguientes opciones es una forma válida de obtener la propiedad de un bean?
a) <jsp:useBean action="get" id="address" property="city" />
b) <jsp:getProperty id="address" property="city" />
c) <jsp:getProperty name="address" property="city" />
d) <jsp:getProperty bean="address" property="*" />

28. Consideremos el siguiente elemento <taglib>, que aparece en un descriptor de despliegue de una aplicación web:
<taglib>
<taglib-uri>/accounting</taglib-uri>
<taglib-location>/WEB-INF/tlds/SmartAccount.tld</taglib-location>
</taglib>
¿Cuál de las siguientes opciones especifica correctamente el uso de la biblioteca de etiquetas en una página
JSP?
a) <%@ taglib uri="/accounting" prefix="acc"%>
b) <%@ taglib uri="/acc" prefix="/accounting"%>
c) <%@ taglib name="/accounting" prefix="acc"%>
d) <%@ taglib library="/accounting" prefix="acc"%>
e) <%@ taglib name="/acc" prefix="/accounting"%>

29. ¿Cuál de las siguientes afirmaciones son ciertas acerca de las aplicaciones basadas en cliente / servidor?

a) Los clientes se suelen utilizar para la presentación de datos, validación


y para la lógica de los procesos de negocio.
b) La mayoría de las aplicaciones cliente / servidor siguen la arquitectura el Model2
en oposición de las aplicaciones que siguen el modelo de n capas.
c) En las aplicaciones cliente / servidor, el cliente normalmente se compone de
la vista, el controlador y partes del modelo.
d) En las típicas aplicaciones cliente / servidor, la capa de presentación
(ventanas) por lo general se comunica con el controlador (un distribuidor de datos),
que a su vez se comunica con los objetos que representan los datos de la empresa.
e) Las aplicaciones cliente / servidor generalmente tienen los clientes pesados y
a veces los servidores también. Por lo tanto, el cliente y el
servidor pueden presentar problemas de portabilidad.

25. Dado el siguiente modelo, indique a que patrón de diseño pertenece y escriba el código de las clases que lo
implementan.

Confidencial Página 6 de 7
Sistemas Examen Java

Confidencial Página 7 de 7

También podría gustarte