Вы находитесь на странице: 1из 4

Gua de estudio para el Examen Extraordinario de Programacin Orientada a Objetos.

Seccin I.- Complete los enunciados siguientes utilizando los trminos escritos en la parte inferior de la hoja.

1) Para que un programa desarrollado en Java compile, debe tener mnimo un(a) ______________.
2) Y para que se ejecute, debe tener al menos un(a) ______________.
3) Por esta caracterstica de los LOO, podemos manipular Pilas, Vectores y Colas sin necesidad de
conocer los detalles de cmo fueron programados; slo necesitamos conocer su interfaz pblica: __
______________.
4) Qu tipo de palabras se identifican primero en los requerimientos del sistema cuando la solucin se
programa con el paradigma orientado a objetos? ___________.
5) Gracias a esta caracterstica de los LOO, podemos definir un tipo de dato propio que describa las
caractersticas importantes de todos los productos de una tienda: ________________.
6) {Da: 5, Mes: 9, Ao: 2013} representa el(a) _______________ de un objeto de tipo Fecha.
7) {Caminar, Correr, Comer} representa el(a) _________________ de un objeto de tipo Zombi.
8) Por esta caracterstica de los LOO, no tuve que volver a compilar la clase UseCircle despus hacer
cambios en Circle y, sin embargo, los cambios se reflejaron en la primera: _________________.
9) Relacin existente entre java@iteso.mx y correo electrnico: ______________________.
10) Relacin conceptual existente entre tower defense y videojuego: ________________.
11) Gracias a que Java es _______________ podemos crear una aplicacin que, mientras est
desplegando una animacin, puede estar leyendo/escribiendo un archivo grande sin afectar a la
animacin.
12) Gracias a esta caracterstica de los LOO, una variable de tipo perifrico puede ser en realidad un
teclado, un monitor o un mouse: ____________________.
13) Relacin existente entre Reloj y Minutero: __________________.
14) Java es __________________ porque protege al sistema de errores en tiempo de ejecucin, como
divisiones entre cero y accesos de memoria no permitidos.
15) Java es ___________________ porque ofrece libreras que facilitan, entre otras cosas, la creacin de
interfaces grficas de usuario, la conexin con base de datos y la manipulacin de colecciones.
16) La sintaxis de Java me recuerda mucho a la de C pero quitando la complejidad del manejo de
apuntadores y memoria dinmica. Por eso se dice que Java es _________________.
17) Java es __________________ porque mi aplicacin funcionar igual en Windows, en Linux o en
Macintosh.
18) Java es __________________ porque me permite crear aplicaciones que se comuniquen a travs de
una red.


Abstraccin Encapsulamiento Instancia RAD
Agregacin Estado Modularidad Robusto
Clase Funcin Multiplataforma Simple
Comportamiento Herencia Multitarea Sustantivos
Distribuido Identidad Polimorfismo Verbos

Seccin II.- Seleccione la respuesta correcta.

1) Lista de identificadores vlidos en Java 7: ( )
a) _x, Mi Clase, edad b) $yy, ao, no_alumno c) x, anho, no.alumno

2) Declaracin vlida en Java 7: ( )
a) int i = 0b10_101; b) byte b = 3_000; c) float f = 3.14;

3) Valor final para la variable s: int a = 9; String s = 123 + 9 + a; ( )
a) 12318 b) 141 c) 12399

4) Valor final para la variable i: double d = 12.4; int i = (int) (15 - d); ( )
a) 2.6 b) 2 c) 3

5) Valor final para la variable c: int w = 0x10; char c = w < 15? w : 64; ( )
a) 0x10 b) w c) @

6) Qu imprime el siguiente cdigo? ( )
int i = -30;
if(i < 10) System.out.println(i);
else if(i < -20) System.out.println(i + i);
else System.out.println(0);
a) -60 b) -30 c) 0

Seccin III.- Implemente SOLO la clase Cylinder cuya funcionalidad aprovecha mucho de lo que ya hace la
clase Circle. Intuya los tipos de datos de los parmetros recibidos en los mtodos..






























Un cilindro extiende la funcionalidad de un crculo porque
adems de tener (x, y) y radio, agrega: posicin z, altura. Para
un cilindro, el atributo radius representa el radio de la base, la
cual es un crculo, (x, y) es la posicin central de la base.
El constructor almacena los parmetros recibidos en los
atributos correspondientes asegurando que la altura no sea
menor que 1.0. Para los parmetros radius, x, y se debe apoyar
del constructor de la clase Circle.
translate(): mueve el cilindro en el espacio siguiendo el vector
de traslacin [dx dy dz]. Para los parmetros dx, dy se debe
apoyar del mtodo del mismo nombre de Circle.
area(): devuelve el rea de la superficie del cilindro: permetro
de la base x altura + 2 veces el rea de la base.
volume(): devuelve el volumen del cilindro: altura x rea de la
base.
toString(): devuelve una cadena de texto como la siguiente:
Altura: 6.5
Radio: 2.4
Posicin: 0.0, 5.3, -2.5
Se debe apoyar del mtodo del mismo nombre en Circle que
devuelve una cadena de texto como la siguiente:
Radio: 2.4
Posicin: 0.0, 5.3
equals(): devuelve verdadero si el objeto recibido es un
cilindro y sus 5 parmetros son iguales a los correspondientes
del objeto en uso; falso, en otro caso. Se debe apoyar del
mtodo del mismo nombre en Circle que compara los
parmetros radius, x, y.
# height : double
# z : double
Cylinder
+ Cylinder(radius, height, x, y, z)
+ translate(dx, dy, dz)
+ area() : double
+ volume() : double
+ toString() : String
+ equals(Object o): boolean
# radius : double
x, y : double
Circle
+ Circle(radius, x, y)
+ translate(dx, dy)
+ perimeter(): double
+ area(): double
+ toString() : String
+ equals(Object o): boolean

Seccin IV.- Conteste las siguientes preguntas con respecto al diagrama anterior.

1) Si Cylinder tuviera una subclase, cules atributos de Circle y Cylinder se podran utilizar ah?

2) Lista todos los atributos que encapsula un objeto de tipo Cylinder.

3) Si estamos en Cylinder, cul es la diferencia entre this.area() y super.area()?

4) Si estamos en Cylinder, cul es la diferencia entre this.perimeter() y super.perimeter()?

5) Si estamos en Circle, cul es la diferencia entre this.perimeter() y super.perimeter()?

6) Si estamos en Circle, cmo podemos asignar 4.5 al atributo height?

7) Desde un objeto Cylinder, puedo realizar una translacin a lo largo del vector [x, y]?

8) Ignorando los de la superclase Object, cules mtodos estaran disponibles para su uso a partir de
un objeto de tipo Cylinder?

9) Cul mtodo equals() se ejecuta aqu, o no es posible esto? cilindro1.equals(circulo2);

Sean c1, c2, s3, o4 variables de tipo Circle, Cylinder, String y Object, respectivamente.
10) Cules asignaciones son vlidas y cules son error de sintaxis? [5p]
c1 = c2;
c2 = c1;
c2 = (Cylinder) c1;
o4 = s3;
s3 = (String) c1;


Adems de los ejercicios de esta gua, hay que estudiar el recorrido del ciclo for-each,
la creacin y el uso de colecciones genricas, como: List, ArrayList, Vector, y la
invocacin a mtodos genricos, como los que ofrece la clase Collections.



Seccin V.- El siguiente diagrama de clases expresa las relaciones existentes entre los elementos de negocio
tpicos de una universidad.





















1) Menciona una clase generalizacin directa de Alumno.

2) Menciona una clase especializacin directa de Empleado.

3) Menciona una clase que tenga herencia mltiple.

4) Si se implementa este modelo en Java, menciona una clase candidata a ser interfaz.

5) Un objeto de tipo DeTiempoFijo encapsula datos y comportamientos de cules clases?

6) Por qu Graduado se model como subclase de Alumno?

7) Qu pasara si Alumno se hubiera modelado como abstracto?

8) Qu relacin natural habra entre Oficinista y una clase Oficina? Suponiendo que un empleado
puede cambiar de oficina con el tiempo.

9) Qu relacin natural habra entre las clases DeTiempoFijo y Consejero? Suponiendo que un
profesor de tiempo fijo pueda ser tambin un consejero durante un perodo.

10) Qu relacin natural habra entre las clases Edificio y Oficina? Suponiendo que cada oficina forma
parte de un solo edificio y siempre del mismo.

11) Menciona una clase a la que puede pertenecer emp en el siguiente mtodo.
public void agregarEmpleado(Empleado emp) {

12) Qu propiedad de la POO se presenta en la variable emp del mtodo anterior?

13) Cul sera la razn de declarar un mtodo calcularSueldo() como abstracto en Empleado?

14) Si emp es de tipo empleado, qu propiedad de la POO se presenta en la lnea de cdigo siguiente?
emp.calcularSueldo().
Persona
Alumno Empleado
Oficinista
Profesor
N
DeAsignatura DeTiempoFijo
Administrativo DeServicios Graduado
Empresa
Trabaja en
Materia
- aprobadas
< Trabaja en

Вам также может понравиться