Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1

4

Click here to load reader

Transcript of Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1

Page 1: Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1

Oracle Certified Professional, Java SE 6 Programmer (1Z0-851) - Guía practica 7 de 7.

Oscar Vásquez Flores ([email protected] )

Esta guía práctica cubre la siguiente sección del examen:

Sección 7: Fundamentos.

7.1. Dado una ejemplo de código y escenario, escribir código que use los

apropiados modificadores de acceso, declaración de paquetes y sentencias import

para interactuar (a través de acceso o herencias) el código de ejemplo.

7.2. Dado un ejemplo de clase y una línea de comando, determinar el

comportamiento esperado en tiempo de ejecución.

7.3. Determinar el efecto de pasar parametros a métodos que sean referencias a

objetos o valores primitivos y como estos se afectan cuando se realizan

modificaciones a estos parámetros en el cuerpo del método.

7.4. Dado un ejemplo de código, reconocer el punto en el cual un objeto se

convierte en elegible para el garbage collection, determinar que es garantizado y

que no es garantizado por el garbage collection system , reconocer el

comportamiento del metodo Object.finalize().

7.5. Dado un nombre completo de clase (incluye el nombre del paquete) que se

coloca dentro o fuera de un archivo JAR, construir la estructura apropiada de

directorios para la clase. Dado un ejemplo de código y classpath, determinar si el

classpath permite compilar exitosamente a la clase.

7.6. Escribir código que utilice los operadores correctamente, incluido operadores

de asignación(Limitado a: =,+=,-=), operadores aritméticos(limitado a: +,-, *, /,

%, ++, --), operadores relacionales (limitado a: <, <=, >, >=, ==, !=), el

operador instanceof, operadores lógicos(limitado a: &, |, ^, !, &&, ||), el operador

condicional(? :). Escribir código que determine la igualdad de dos objetos o

primitivos.

Page 2: Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1

Oracle Certified Professional, Java SE 6 Programmer (1Z0-851) - Guía practica 7 de 7.

Oscar Vásquez Flores ([email protected] )

7.1. Dado una ejemplo de código y escenario, escribir código que use los

apropiados modificadores de acceso, declaración de paquetes y sentencias

import para interactuar (a través de acceso o herencias) el código de

ejemplo.

❑ Se debe especificar un import estático así: import static.

❑ Se puede usar un import estático para crear accesos directos a miembros static de

cualquier clase.

7.2. Dado un ejemplo de clase y una línea de comando, determinar el

comportamiento esperado en tiempo de ejecución.

❑ Se puede usar la opción –d para cambiar el destino de las clases generadas, cuando

se utiliza el comando javac.

❑ Use puede usar la opción -D para especificar una propiedad del sistema, cuando se

utiliza el comando java.

❑ Las propiedades del sistemas con pares nombre=valor que se debe colocar después de

cada opción –D. Ejemplo: java –Dmipropiedad=mivalor

❑ Los argumentos de la línea de comandos siempre se tratan como String.

❑ Para el comando java los argumentos de la clase se colocan en un array de String.

7.3. Determinar el efecto de pasar parametros a métodos que sean

referencias a objetos o valores primitivos y como estos se afectan cuando

se realizan modificaciones a estos parámetros en el cuerpo del método.

❑ Los métodos pueden tener como argumentos a tipos primitivos y/o referencia a

Objetos.

❑ Los argumentos de un metodo siempre son copiados.

❑ Un argumento primitivo es una copia del primitivo original, no están asociados.

❑ Un argumento de referencia a un objeto es otra copia de la referencia al objeto original.

7.4. Dado un ejemplo de código, reconocer el punto en el cual un objeto se

convierte en elegible para el garbage collection, determinar que es

garantizado y que no es garantizado por el garbage collection system ,

reconocer el comportamiento del metodo Object.finalize().

❑ En Java, el garbage collection (GC) provee un manejo automático de la memoria.

❑ El propósito del GC es de eliminar objeto que no pueden ser alcanzados.

❑ Únicamente el JVM decide cuando ejecutar el GC, se puede únicamente sugerir,

dependerá del JVM el tomar la sugerencia..

❑ No se conoce el algoritmo del GC por seguridad.

❑ Se dice que un objeto es elegible para el GC cuando ninguna thread viva puede

alcanzar este objeto.

Page 3: Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1

Oracle Certified Professional, Java SE 6 Programmer (1Z0-851) - Guía practica 7 de 7.

Oscar Vásquez Flores ([email protected] )

❑ Un objeto es alcanzable cuando se tiene una referencia viva a ese objeto.

❑ Las aplicaciones Java pueden correr por un tiempo en out of memory.

❑ Las islas de objetos pueden ser llevadas por el GC, aunque se estén referenciándose

entre ellas mismas.

❑ Se puede sugerir la ejecución del GC con el método System.gc().

❑ La clase Object tiene el metodo finalize().

❑ El GC solo garantiza que se ejecuta el metodo finalize() una sola vez y antes de que el

objeto sea eliminado. Es decir si el objeto no es eliminado por el GC es posible que nunca se ejecute el metodo finalize().

❑ Se puede hacer un objeto no legible para el GC dentro del metodo finalize().

7.5. Dado un nombre completo de clase (incluye el nombre del paquete)

que se coloca dentro o fuera de un archivo JAR, construir la estructura

apropiada de directorios para la clase. Dado un ejemplo de código y

classpath, determinar si el classpath permite compilar exitosamente a la

clase.

❑ El comando java y javac usan el mismo algoritmo para buscar a las clases.

❑ La búsqueda de clases se inicia dentro del directorio que contienen a las clases del

estándar J2SE.

❑ Se puede especificar localizaciones adicionales para encontrar las clases utilizando las

opciones de classpaths.

❑ Se puede definir un classpath por defecto utilizando variables de ambiente del sistema

operativo.

❑ El classpath que se especifique por línea de comandos sobrescribe al que se

especificos por defecto.

❑ Se puede definir un simple classpath que incluya la búsqueda en diversas

localizaciones.

❑ Para separar directorios en el classpath, en Unix se usa el (/) y en Windows se usa (\).

❑ Para separar paths en el classpath, en Unix se usa el (:) y en Windows se usa (;).

❑ En el classpath para especificar el directorio actual se usa el (.).

❑ Dentro de un classpath, una vez que se encontró la clase, se detiene esa búsqueda,

entonces es importante el orden de las localizaciones.

❑ Si una clase esta dentro de un paquete, siempre se debe especificar el nombre

completo de esta.

Page 4: Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1

Oracle Certified Professional, Java SE 6 Programmer (1Z0-851) - Guía practica 7 de 7.

Oscar Vásquez Flores ([email protected] )

❑ La sentencia import permite declarar un tipo de alias a los nombres completos de las

clases.

❑ Para que una clase sea localizada el nombre completo de esta debe estar relacionado

directamente con la estructura de directorios que la contienen.

❑ Un classpath puede contener paths relativos y/o absolutos.

❑ Un path absoluto en Unix inicia con (/).

❑ Only the final directory in a given path will be searched.

❑ Todo una estructura de directorios completa puede ser colocado dentro de un archivo

JAR.

❑ Un archivo JAR puede ser requerido por el comando java o javac.

❑ Cuando se desea incluir un archivo JAR en el classpath, no solo se debe incluir el

directorio donde esta el JAR, también es necesario el nombre del archivo.

❑ Por razones de pruebas se puede colocar los archivos JARs propios en el

directorio…/jre/lib/ext que forman parte de la instalacion de la JVM.

7.6. Escribir código que utilice los operadores correctamente, incluido

operadores de asignación(Limitado a: =,+=,-=), operadores

aritméticos(limitado a: +,-, *, /, %, ++, --), operadores relacionales

(limitado a: <, <=, >, >=, ==, !=), el operador instanceof, operadores

lógicos(limitado a: &, |, ^, !, &&, ||), el operador condicional(? :). Escribir

código que determine la igualdad de dos objetos o primitivos.

Este tema se desarrollo en otros partes.