test tÉcnico java

6
TEST TÉCNICO JAVA/J2EE 1.- Definimos una clase Felino de la siguiente manera: import java.io.*; public class Felino { private int numeroVidas = 7; private String colorfelino; public Felino (String color) { colorfelino = color; } public void morir () { if (numeroVidas > 0) { numeroVidas = numeroVidas –1; System.out.println(“\n El felino de color “ + colorfelino + “ tiene” + numeroVidas + “ vidas.”); } else System.out.println (“\n El felino ha muerto!”); } } a) Implementar una clase llamada “Gato” que, además de ser un felino, sea capaz de maullar (Sacar por la salida estándar un “MIAU”) import java.io.*; public class Gato extends Felino{ public Gato(String color) { super(color); } public void maullar(){ System.out.println("Miau!"); } } b) Implementar una clase pública que cree una “Jaula” con 10 Gatos import java.util.ArrayList; public class Jaula { public ArrayList<Gato> crearJaulaGatos(){

Upload: alberto-garrido

Post on 03-Jul-2015

760 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: TEST TÉCNICO JAVA

TEST TÉCNICO JAVA/J2EE

1.- Definimos una clase Felino de la siguiente manera:

import java.io.*;public class Felino {

private int numeroVidas = 7;private String colorfelino;public Felino (String color) {

colorfelino = color;}public void morir () {

if (numeroVidas > 0) {numeroVidas = numeroVidas –1;System.out.println(“\n El felino de color “ + colorfelino + “ tiene” + numeroVidas + “ vidas.”);} else

System.out.println (“\n El felino ha muerto!”);

}}

a) Implementar una clase llamada “Gato” que, además de ser un felino, sea capaz de maullar (Sacar por la salida estándar un “MIAU”)

import java.io.*;

public class Gato extends Felino{

public Gato(String color) { super(color); } public void maullar(){ System.out.println("Miau!"); } }

b) Implementar una clase pública que cree una “Jaula” con 10 Gatosimport java.util.ArrayList;public class Jaula { public ArrayList<Gato> crearJaulaGatos(){ ArrayList<Gato> gatos = new ArrayList<Gato>(); for (int i = 0; i < 10; i++) { Gato gato = new Gato("Negro"); gatos.add(gato); } return gatos; }}

Page 2: TEST TÉCNICO JAVA

2.- Podrías explicar muy brevemente que es la “sobrecarga” de métodos en java

Sobrecarga de métodos consiste en nombrar los métodos de la misma manera pero utilizando distintos parámetros.

3.- ¿Podrías comentar (apoyado de algún esquema) que es la arquitectura MVC en entornos J2EE?. ¿Conoces implementaciones de esta arquitectura?. En caso de conocer alguna, coméntala brevemente.

MVC significa Modelo Vista Controlardor. Es un patrón de diseño que separa los elementos del codigo para hacerlos mas mantenibles y facilmente ampliables. Según este patron se divide en las tres capas;

MODELO: contiene la lógica de negocio, el manejo de datos (Beans, Objetos VO, DAOS, EJB, etc. dependiendo de la aplicación)

CONTROLADOR: capa intermedia que maneja la lógica de los datos. Recibe peticiones de la vista, los traslada al modelo y recibe respuesta, dependiendo de ella decide si enviarla de vuelta a vista o manejar los errores o lo que deba hacer en cada caso.

VISTA: Capa de la presentacion de la aplicación. Presenta los datos recibidos por el controlador y se encarga de enviar los datos y peticiones introducidas por los usuarios.

Algunas implementaciones:Struts, JavaServerFaces, Spring, Grails (framework basado en Groovy (a su vez basado y compatible con java))Ninguno de ellos hace uso exactamente de las 3 capas del MVC pero si de alguna de ellas lo que los convierte en ideales para este modelo. Struts incide en las capas Controlador (actions, forms, plugins …) y vista (etiquetas, layouts …). Spring incide mas en la capa modelo, considerandosele un sustituto de los EJB. Y javaServerFaces incide fundamentalmente en la capa de vista ya que provee de elementos y librerias para un mejor manejo.

Page 3: TEST TÉCNICO JAVA

4.- ¿En que se diferencia J2SE de J2EE?

Ambos proveen entornos para desarrollo en java pero J2SE se basa mas en aplicaciones de escritorio y J2EE en aplicaciones web

5.- Comenta brevemente lo que conozcas de los siguientes Items:

a) Hibernate Herramienta de mapeo de objetos a la base de datos, simplifica la interactuación de la aplicacion a la base de datos (se pueden mapear con XML o con entidades con anotaciones)

b) JSF JavaServerFaces: framework que incluye herramientas para la creacion de páginas web.

c) AJAX es una técnica de desarrollo web para crear aplicaciones interactivas. Estas aplicaciones se ejecutan en el cliente sin interferir con el funcionamiento de la página hacen las operaciones lo que hace la web mas usable y mas dinámica.

d) Maverick

e) Alfresco: sistema de gestion de contenido y documentos empresarial, open source.

f) Sourceforge Site: repositorio de aplicaciones open source, cualquiera puede subir sus aplicaciones pero deben cumplirla licencia de codigo abierto.

g) C3PO a parte del gracioso robot de Star Wars es un lector de DNI electrónico.