SlideShare uma empresa Scribd logo
1 de 4
Baixar para ler offline
Oracle Certified Professional, Java SE 6 Programmer (1Z0-851)   - Guía practica 5 de 7.


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

Seccion 5: Conceptos de OO.

5.1.   Desarrollar código que implemente encapsulamiento estricto,
       acoplamiento ligero y alta cohesión en las clases, y describir los
       beneficios.

5.2.   Dado un escenario, desarrollar código que demuestre el uso de
       polimorfismo. Determinar cuando es necesario un casting, reconoce
       la diferencia entre errores en tiempo de compilación vs errores en
       tiempo de ejecución respecto a casting.


5.3.   Explicar los efectos de los modificadores en la herencia respecto al
       constructor, miembros de instancia o static.


5.4.   Dado un escenario, desarrollar código que declare y/o invoque sobre
       escritura o sobrecarga de métodos, código que declara y/o invoque
       súper clases o sobre carga de constructores.


5.5.   Desarrollar código que implemente las relaciones “IS-A” y/o “HAS-
       A”




Oscar Vásquez Flores (eoscarvf@gmail.com )
Oracle Certified Professional, Java SE 6 Programmer (1Z0-851)     - Guía practica 5 de 7.



5.1.   Desarrollar código que implemente encapsulamiento estricto,
       acoplamiento ligero y alta cohesión en las clases, y describir los
       beneficios.

❑ El encapsulamiento ayuda a ocultar la implementación detrás de una interface (API).

❑ El código encapsulado tiene 2 características:
      ❑ Las variables de instancia son protegidas(usualmente con el modificado
       private)
       ❑ Los métodos get y ser son proporcionados para acceder a las variables de
       instancia.

❑ IS-A se refiere a herencia o implementación.

❑ IS-A es expresado con el palabra reservada extends

❑ IS-A “”hereda de” y “es un sub tipo de” son las expresiones equivalentes.

❑ HAS-A significa que una instancia de una clase “tiene una” referencia a una instancia
de otra clase u otra instancia de la misma clase.

❑ Acoplamiento se refiere al grado con el cual una clase conoce acerca o usa miembros
de otra clase.

❑ Bajo acoplamiento es estado deseable de tener clases que son bien encapsuladas,
minimizando las referencias entre estas y militando el uso del “API”.

❑ Alto acoplamiento es el estado no deseado de tener clases que rompen las reglas del
bajo acoplamiento.

❑ Cohesión se refiere al grado en el cual una clase tiene un simple, bien definido rol o
responsabilidad.

❑ Cohesión alta es estado deseable de una clase cuyos miembros soportan un simple
bien definido rol o responsabilidad.

❑ Cohesión baja es estado no deseable de una clase cuyos miembros soportan múltiples
no definidos roles o responsabilidades.


5.2.    Dado un escenario, desarrollar código que demuestre el uso de
        polimorfismo. Determinar cuando es necesario un casting, reconoce
        la diferencia entre errores en tiempo de compilación vs errores en
        tiempo de ejecución respecto a casting.

❑ Polimorfismo significa varias formas.

❑ Un objeto puede ser referenciado por variables de diferentes tipos, siempre y cuando
todos esos tipos sean supertipos (super clases o interfaces) del tipo original del objeto.

❑ El tipo de la variable de referencia (cuando es diferente al tipo del objeto) determina
que miembros se pueden llamar.




Oscar Vásquez Flores (eoscarvf@gmail.com )
Oracle Certified Professional, Java SE 6 Programmer (1Z0-851)   - Guía practica 5 de 7.



❑ Hay dos tipo de casting de variables de referencia: downcasting y upcasting.

❑ Downcasting: Ocurre en el siguiente escenario.
Si: Clase1 extends Clase2

//Tenemos el siguiente caso:
Clase2 x=new Clase1();
Clase1 y;
y=(Clase1)x

❑ Upcasting: Ocurre en el siguiente escenario.
Si: Clase1 extends Clase2

//Tenemos el siguiente caso:
Clase2 x;
Clase1 y=new Clase1();
//De forma implícita.
x=y;
//De forma explicita.
x=(Clase2)y;

5.3. Explicar los efectos de los modificadores en la herencia respecto al
constructor, miembros de instancia o static.
       Se revisa en otros puntos.

5.4.   Dado un escenario, desarrollar código que declare y/o invoque sobre
escritura o sobrecarga de métodos, código que declara y/o invoque súper
clases o sobre carga de constructores.

❑ Los métodos pueden ser sobre escritos y sobre cargados; los constructores pueden ser
sobre cargados pero no sobre escritos.

❑ Con respecto al metodo que es sobre escrito, el metodo que sobre escribe:

       ❑ Deberá tener la misma lista de argumentos.

       ❑ Deberá tener el mismo tipo de retorno, pero desde Java 5, el tipo de retorno
       puede ser una sub clase, a esto se conoce como retorno covariant.

       ❑ No deberá tener un modificador de acceso mas restrictivo.

       ❑ Puede tener un modificador de acceso menos restrictivo.

       ❑ No deberá lanzar nuevas o más amplias excepciones checked.

       ❑ Puede lanzar algunas o más estrechas excepciones checked o cualquier
       excepción no checked.

❑ Una sub clase usa super.overridenMethodName() para invocar a la versión del metodo
en la súper clase.

❑ Sobre carga significa reusar el nombre del metodo pero con diferentes argumentos.

❑ Los métodos sobre cargados



Oscar Vásquez Flores (eoscarvf@gmail.com )
Oracle Certified Professional, Java SE 6 Programmer (1Z0-851)     - Guía practica 5 de 7.


       ❑ Deberá tener una lista diferente de argumentos.

       ❑ Puede tener un diferente tipo de retorno, si la lista de argumento son diferentes.

       ❑ Puede tener diferente modificado de acceso.

       ❑ Puede lanzar excepciones diferentes.

❑ Los métodos de una súper clase pueden ser sobre cargados en una sub clase.

❑ Polimorfismo aplica para sobre escritura y no para sobre carga.

❑ Object type (not the reference variable's type), determines which overridden
method is used at runtime.
El tipo del objeto (Cuando la variable es deferente tipo), determina cual


❑ Reference type determines which overloaded method will be used at
compile time.

5.5.   Desarrollar código que implemente las relaciones “IS-A” y/o “HAS-
A”

❑ La herencia permite a una clase ser una sub clase de una súper clase y de esa forma
heredar los miembros de la súper clase.

❑ La herencia es un concepto clave que esta relacionado a IS-A, polimorfismo, sobre
escritura, sobre carga y casting.

❑ Todas las clases(excepto la clase Object) son sub clases de Object.




Oscar Vásquez Flores (eoscarvf@gmail.com )

Mais conteúdo relacionado

Mais procurados

OCP JSE 6 Programmer (1Z0-851) - Guia practica 1 de 7(Declaraciones)
OCP JSE 6 Programmer (1Z0-851) - Guia practica 1 de 7(Declaraciones)OCP JSE 6 Programmer (1Z0-851) - Guia practica 1 de 7(Declaraciones)
OCP JSE 6 Programmer (1Z0-851) - Guia practica 1 de 7(Declaraciones)Oscar V
 
Estructura basica de un programa
Estructura basica de un programaEstructura basica de un programa
Estructura basica de un programaRay-kun Olivera
 
CUESTIONARIO JAVA
CUESTIONARIO JAVACUESTIONARIO JAVA
CUESTIONARIO JAVAjesanchez5
 
Guia de estudio OCP Java SE 7 Programmer
Guia de estudio OCP Java SE 7 ProgrammerGuia de estudio OCP Java SE 7 Programmer
Guia de estudio OCP Java SE 7 ProgrammerOscar V
 
Programacion Parcial
Programacion ParcialProgramacion Parcial
Programacion Parcialdiegoyustes
 
Clase n°1 java
Clase n°1 javaClase n°1 java
Clase n°1 javajbersosa
 
Curso Java Inicial 2 - Introducción y Sintaxis
Curso Java Inicial  2 - Introducción y SintaxisCurso Java Inicial  2 - Introducción y Sintaxis
Curso Java Inicial 2 - Introducción y SintaxisEmilio Aviles Avila
 
Programación java1
Programación java1Programación java1
Programación java1jbersosa
 
Java exceptions
Java exceptionsJava exceptions
Java exceptionssandropaul
 
Excepciones en java
Excepciones en javaExcepciones en java
Excepciones en javajent46
 
Equivalencias Vb Net Y C
Equivalencias Vb Net Y CEquivalencias Vb Net Y C
Equivalencias Vb Net Y Cdeadss
 
Curso Java Inicial 6 Polimorfismo, AbstraccióN E Interfaces
Curso Java Inicial   6 Polimorfismo, AbstraccióN E InterfacesCurso Java Inicial   6 Polimorfismo, AbstraccióN E Interfaces
Curso Java Inicial 6 Polimorfismo, AbstraccióN E InterfacesEmilio Aviles Avila
 

Mais procurados (20)

OCP JSE 6 Programmer (1Z0-851) - Guia practica 1 de 7(Declaraciones)
OCP JSE 6 Programmer (1Z0-851) - Guia practica 1 de 7(Declaraciones)OCP JSE 6 Programmer (1Z0-851) - Guia practica 1 de 7(Declaraciones)
OCP JSE 6 Programmer (1Z0-851) - Guia practica 1 de 7(Declaraciones)
 
Estructura basica de un programa
Estructura basica de un programaEstructura basica de un programa
Estructura basica de un programa
 
Herencia Y Polimorfismo
Herencia Y PolimorfismoHerencia Y Polimorfismo
Herencia Y Polimorfismo
 
Paradigma orientado a objetos
Paradigma orientado a objetosParadigma orientado a objetos
Paradigma orientado a objetos
 
Cuestionario
CuestionarioCuestionario
Cuestionario
 
CUESTIONARIO JAVA
CUESTIONARIO JAVACUESTIONARIO JAVA
CUESTIONARIO JAVA
 
Guia de estudio OCP Java SE 7 Programmer
Guia de estudio OCP Java SE 7 ProgrammerGuia de estudio OCP Java SE 7 Programmer
Guia de estudio OCP Java SE 7 Programmer
 
Csharp
CsharpCsharp
Csharp
 
Programacion Parcial
Programacion ParcialProgramacion Parcial
Programacion Parcial
 
Cuestionario
CuestionarioCuestionario
Cuestionario
 
Clase n°1 java
Clase n°1 javaClase n°1 java
Clase n°1 java
 
08 Herencia
08   Herencia08   Herencia
08 Herencia
 
Curso Java Inicial 2 - Introducción y Sintaxis
Curso Java Inicial  2 - Introducción y SintaxisCurso Java Inicial  2 - Introducción y Sintaxis
Curso Java Inicial 2 - Introducción y Sintaxis
 
Programación java1
Programación java1Programación java1
Programación java1
 
Ppt java
Ppt javaPpt java
Ppt java
 
Java exceptions
Java exceptionsJava exceptions
Java exceptions
 
Excepciones en java
Excepciones en javaExcepciones en java
Excepciones en java
 
JAVA 00 - TEMA 05 - HERENCIA
JAVA 00 - TEMA 05 - HERENCIAJAVA 00 - TEMA 05 - HERENCIA
JAVA 00 - TEMA 05 - HERENCIA
 
Equivalencias Vb Net Y C
Equivalencias Vb Net Y CEquivalencias Vb Net Y C
Equivalencias Vb Net Y C
 
Curso Java Inicial 6 Polimorfismo, AbstraccióN E Interfaces
Curso Java Inicial   6 Polimorfismo, AbstraccióN E InterfacesCurso Java Inicial   6 Polimorfismo, AbstraccióN E Interfaces
Curso Java Inicial 6 Polimorfismo, AbstraccióN E Interfaces
 

Destaque

Ocp, jse 6 programmer (1 z0 851) - guia practica 4 de 7(concurrencia) v1
Ocp, jse 6 programmer (1 z0 851) - guia practica 4 de 7(concurrencia) v1Ocp, jse 6 programmer (1 z0 851) - guia practica 4 de 7(concurrencia) v1
Ocp, jse 6 programmer (1 z0 851) - guia practica 4 de 7(concurrencia) v1Oscar V
 
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 6 de 7(Colecciones y Genericos)
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 6 de 7(Colecciones y Genericos)OCP, JSE 6 Programmer (1Z0-851) - Guia practica 6 de 7(Colecciones y Genericos)
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 6 de 7(Colecciones y Genericos)Oscar V
 
Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1
Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1
Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1Oscar V
 
Proceso para el registro o compra de exámenes de certificación en java
Proceso para el registro o compra de exámenes de certificación en javaProceso para el registro o compra de exámenes de certificación en java
Proceso para el registro o compra de exámenes de certificación en javaOscar V
 
WMB for z/OS - Configuracion del nodo CICSRequest en z/OS
WMB for z/OS - Configuracion del nodo CICSRequest en z/OSWMB for z/OS - Configuracion del nodo CICSRequest en z/OS
WMB for z/OS - Configuracion del nodo CICSRequest en z/OSOscar V
 
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...Oscar V
 
OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)
OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)
OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)Oscar V
 
Administracion de WebSphere MQ for zOS v7.0
Administracion de WebSphere MQ for zOS v7.0Administracion de WebSphere MQ for zOS v7.0
Administracion de WebSphere MQ for zOS v7.0Oscar V
 
Oracle Certified Expert, Java EE 6 Web Service Developer
Oracle Certified Expert, Java EE 6 Web Service DeveloperOracle Certified Expert, Java EE 6 Web Service Developer
Oracle Certified Expert, Java EE 6 Web Service DeveloperOscar V
 
Guia de estudio OCA Java SE 7 Programmer
Guia de estudio OCA Java SE 7 ProgrammerGuia de estudio OCA Java SE 7 Programmer
Guia de estudio OCA Java SE 7 ProgrammerOscar V
 
Curso de JBPM5 - Laboratorios
Curso de JBPM5 - LaboratoriosCurso de JBPM5 - Laboratorios
Curso de JBPM5 - LaboratoriosOscar V
 
Preparacion Ambiente Wmb6.X
Preparacion Ambiente Wmb6.XPreparacion Ambiente Wmb6.X
Preparacion Ambiente Wmb6.XOscar V
 
Curso de JBPM5
Curso de JBPM5Curso de JBPM5
Curso de JBPM5Oscar V
 
Guia de estudio para Oracle Certified Java EE 6 Web Component Developer
Guia de estudio para Oracle Certified Java EE 6 Web Component DeveloperGuia de estudio para Oracle Certified Java EE 6 Web Component Developer
Guia de estudio para Oracle Certified Java EE 6 Web Component DeveloperOscar V
 

Destaque (14)

Ocp, jse 6 programmer (1 z0 851) - guia practica 4 de 7(concurrencia) v1
Ocp, jse 6 programmer (1 z0 851) - guia practica 4 de 7(concurrencia) v1Ocp, jse 6 programmer (1 z0 851) - guia practica 4 de 7(concurrencia) v1
Ocp, jse 6 programmer (1 z0 851) - guia practica 4 de 7(concurrencia) v1
 
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 6 de 7(Colecciones y Genericos)
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 6 de 7(Colecciones y Genericos)OCP, JSE 6 Programmer (1Z0-851) - Guia practica 6 de 7(Colecciones y Genericos)
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 6 de 7(Colecciones y Genericos)
 
Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1
Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1
Ocp, jse 6 programmer (1 z0 851) - guia practica 7 de 7(fundamentos) v1
 
Proceso para el registro o compra de exámenes de certificación en java
Proceso para el registro o compra de exámenes de certificación en javaProceso para el registro o compra de exámenes de certificación en java
Proceso para el registro o compra de exámenes de certificación en java
 
WMB for z/OS - Configuracion del nodo CICSRequest en z/OS
WMB for z/OS - Configuracion del nodo CICSRequest en z/OSWMB for z/OS - Configuracion del nodo CICSRequest en z/OS
WMB for z/OS - Configuracion del nodo CICSRequest en z/OS
 
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...
OCP, JSE 6 Programmer (1Z0-851) - Guia practica 2 de 7(Flujos, Excepciones y ...
 
OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)
OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)
OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)
 
Administracion de WebSphere MQ for zOS v7.0
Administracion de WebSphere MQ for zOS v7.0Administracion de WebSphere MQ for zOS v7.0
Administracion de WebSphere MQ for zOS v7.0
 
Oracle Certified Expert, Java EE 6 Web Service Developer
Oracle Certified Expert, Java EE 6 Web Service DeveloperOracle Certified Expert, Java EE 6 Web Service Developer
Oracle Certified Expert, Java EE 6 Web Service Developer
 
Guia de estudio OCA Java SE 7 Programmer
Guia de estudio OCA Java SE 7 ProgrammerGuia de estudio OCA Java SE 7 Programmer
Guia de estudio OCA Java SE 7 Programmer
 
Curso de JBPM5 - Laboratorios
Curso de JBPM5 - LaboratoriosCurso de JBPM5 - Laboratorios
Curso de JBPM5 - Laboratorios
 
Preparacion Ambiente Wmb6.X
Preparacion Ambiente Wmb6.XPreparacion Ambiente Wmb6.X
Preparacion Ambiente Wmb6.X
 
Curso de JBPM5
Curso de JBPM5Curso de JBPM5
Curso de JBPM5
 
Guia de estudio para Oracle Certified Java EE 6 Web Component Developer
Guia de estudio para Oracle Certified Java EE 6 Web Component DeveloperGuia de estudio para Oracle Certified Java EE 6 Web Component Developer
Guia de estudio para Oracle Certified Java EE 6 Web Component Developer
 

Semelhante a OCP, JSE 6 Programmer (1Z0-851) - Guia practica 5 de 7(OO) v1

Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Javamaeusogo
 
Certificación java 6 cap 2
Certificación java 6 cap 2Certificación java 6 cap 2
Certificación java 6 cap 2srBichoRaro
 
Herencia y Polimorfismo
Herencia y PolimorfismoHerencia y Polimorfismo
Herencia y Polimorfismonestor_moren
 
Programación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismoProgramación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismoAngel Vázquez Patiño
 
2introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate022introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate02Krizztiina Pacheko
 
2) introduccion al lenguaje java
2) introduccion al lenguaje java2) introduccion al lenguaje java
2) introduccion al lenguaje javaMargarita Romero
 
Clase n°2 3-4 java
Clase n°2 3-4 javaClase n°2 3-4 java
Clase n°2 3-4 javajbersosa
 
lenguajejava.pptx
lenguajejava.pptxlenguajejava.pptx
lenguajejava.pptxMiguelAmc
 
Poo 3 herencia
Poo 3 herenciaPoo 3 herencia
Poo 3 herenciajlmanmons
 
Curso de Introducción a Java SE ppt.pdf
Curso de Introducción a Java SE ppt.pdfCurso de Introducción a Java SE ppt.pdf
Curso de Introducción a Java SE ppt.pdfssuserc151d0
 
METODOS HEREDADOS EN LA PROGRAMACION .pptx
METODOS HEREDADOS EN LA PROGRAMACION .pptxMETODOS HEREDADOS EN LA PROGRAMACION .pptx
METODOS HEREDADOS EN LA PROGRAMACION .pptxjuan gonzalez
 
Java_Capitulo_7
Java_Capitulo_7Java_Capitulo_7
Java_Capitulo_7Espol
 
Mecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptx
Mecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptxMecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptx
Mecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptxjuan gonzalez
 

Semelhante a OCP, JSE 6 Programmer (1Z0-851) - Guia practica 5 de 7(OO) v1 (20)

10 - Slides-Java sesion.pptx
10 - Slides-Java sesion.pptx10 - Slides-Java sesion.pptx
10 - Slides-Java sesion.pptx
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Java
 
Variables y constantes
Variables  y constantesVariables  y constantes
Variables y constantes
 
Certificación java 6 cap 2
Certificación java 6 cap 2Certificación java 6 cap 2
Certificación java 6 cap 2
 
Herencia y Polimorfismo
Herencia y PolimorfismoHerencia y Polimorfismo
Herencia y Polimorfismo
 
Programación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismoProgramación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismo
 
2introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate022introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate02
 
INTRODUCCION LENGUAJE JAVA
INTRODUCCION LENGUAJE JAVAINTRODUCCION LENGUAJE JAVA
INTRODUCCION LENGUAJE JAVA
 
2) introduccion al lenguaje java
2) introduccion al lenguaje java2) introduccion al lenguaje java
2) introduccion al lenguaje java
 
Clase n°2 3-4 java
Clase n°2 3-4 javaClase n°2 3-4 java
Clase n°2 3-4 java
 
JAVA ORIENTADO A OBJETOS - INTERFACES
JAVA ORIENTADO A OBJETOS - INTERFACESJAVA ORIENTADO A OBJETOS - INTERFACES
JAVA ORIENTADO A OBJETOS - INTERFACES
 
lenguajejava.pptx
lenguajejava.pptxlenguajejava.pptx
lenguajejava.pptx
 
Poo 3 herencia
Poo 3 herenciaPoo 3 herencia
Poo 3 herencia
 
Curso de Introducción a Java SE ppt.pdf
Curso de Introducción a Java SE ppt.pdfCurso de Introducción a Java SE ppt.pdf
Curso de Introducción a Java SE ppt.pdf
 
Java
JavaJava
Java
 
Act 2 y 3
Act 2 y 3Act 2 y 3
Act 2 y 3
 
METODOS HEREDADOS EN LA PROGRAMACION .pptx
METODOS HEREDADOS EN LA PROGRAMACION .pptxMETODOS HEREDADOS EN LA PROGRAMACION .pptx
METODOS HEREDADOS EN LA PROGRAMACION .pptx
 
SuperClase.pdf
SuperClase.pdfSuperClase.pdf
SuperClase.pdf
 
Java_Capitulo_7
Java_Capitulo_7Java_Capitulo_7
Java_Capitulo_7
 
Mecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptx
Mecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptxMecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptx
Mecanismos-de-abstraccion-en-Java PARA PROGRAMAR.pptx
 

OCP, JSE 6 Programmer (1Z0-851) - Guia practica 5 de 7(OO) v1

  • 1. Oracle Certified Professional, Java SE 6 Programmer (1Z0-851) - Guía practica 5 de 7. Esta guía práctica cubre la siguiente sección del examen: Seccion 5: Conceptos de OO. 5.1. Desarrollar código que implemente encapsulamiento estricto, acoplamiento ligero y alta cohesión en las clases, y describir los beneficios. 5.2. Dado un escenario, desarrollar código que demuestre el uso de polimorfismo. Determinar cuando es necesario un casting, reconoce la diferencia entre errores en tiempo de compilación vs errores en tiempo de ejecución respecto a casting. 5.3. Explicar los efectos de los modificadores en la herencia respecto al constructor, miembros de instancia o static. 5.4. Dado un escenario, desarrollar código que declare y/o invoque sobre escritura o sobrecarga de métodos, código que declara y/o invoque súper clases o sobre carga de constructores. 5.5. Desarrollar código que implemente las relaciones “IS-A” y/o “HAS- A” Oscar Vásquez Flores (eoscarvf@gmail.com )
  • 2. Oracle Certified Professional, Java SE 6 Programmer (1Z0-851) - Guía practica 5 de 7. 5.1. Desarrollar código que implemente encapsulamiento estricto, acoplamiento ligero y alta cohesión en las clases, y describir los beneficios. ❑ El encapsulamiento ayuda a ocultar la implementación detrás de una interface (API). ❑ El código encapsulado tiene 2 características: ❑ Las variables de instancia son protegidas(usualmente con el modificado private) ❑ Los métodos get y ser son proporcionados para acceder a las variables de instancia. ❑ IS-A se refiere a herencia o implementación. ❑ IS-A es expresado con el palabra reservada extends ❑ IS-A “”hereda de” y “es un sub tipo de” son las expresiones equivalentes. ❑ HAS-A significa que una instancia de una clase “tiene una” referencia a una instancia de otra clase u otra instancia de la misma clase. ❑ Acoplamiento se refiere al grado con el cual una clase conoce acerca o usa miembros de otra clase. ❑ Bajo acoplamiento es estado deseable de tener clases que son bien encapsuladas, minimizando las referencias entre estas y militando el uso del “API”. ❑ Alto acoplamiento es el estado no deseado de tener clases que rompen las reglas del bajo acoplamiento. ❑ Cohesión se refiere al grado en el cual una clase tiene un simple, bien definido rol o responsabilidad. ❑ Cohesión alta es estado deseable de una clase cuyos miembros soportan un simple bien definido rol o responsabilidad. ❑ Cohesión baja es estado no deseable de una clase cuyos miembros soportan múltiples no definidos roles o responsabilidades. 5.2. Dado un escenario, desarrollar código que demuestre el uso de polimorfismo. Determinar cuando es necesario un casting, reconoce la diferencia entre errores en tiempo de compilación vs errores en tiempo de ejecución respecto a casting. ❑ Polimorfismo significa varias formas. ❑ Un objeto puede ser referenciado por variables de diferentes tipos, siempre y cuando todos esos tipos sean supertipos (super clases o interfaces) del tipo original del objeto. ❑ El tipo de la variable de referencia (cuando es diferente al tipo del objeto) determina que miembros se pueden llamar. Oscar Vásquez Flores (eoscarvf@gmail.com )
  • 3. Oracle Certified Professional, Java SE 6 Programmer (1Z0-851) - Guía practica 5 de 7. ❑ Hay dos tipo de casting de variables de referencia: downcasting y upcasting. ❑ Downcasting: Ocurre en el siguiente escenario. Si: Clase1 extends Clase2 //Tenemos el siguiente caso: Clase2 x=new Clase1(); Clase1 y; y=(Clase1)x ❑ Upcasting: Ocurre en el siguiente escenario. Si: Clase1 extends Clase2 //Tenemos el siguiente caso: Clase2 x; Clase1 y=new Clase1(); //De forma implícita. x=y; //De forma explicita. x=(Clase2)y; 5.3. Explicar los efectos de los modificadores en la herencia respecto al constructor, miembros de instancia o static. Se revisa en otros puntos. 5.4. Dado un escenario, desarrollar código que declare y/o invoque sobre escritura o sobrecarga de métodos, código que declara y/o invoque súper clases o sobre carga de constructores. ❑ Los métodos pueden ser sobre escritos y sobre cargados; los constructores pueden ser sobre cargados pero no sobre escritos. ❑ Con respecto al metodo que es sobre escrito, el metodo que sobre escribe: ❑ Deberá tener la misma lista de argumentos. ❑ Deberá tener el mismo tipo de retorno, pero desde Java 5, el tipo de retorno puede ser una sub clase, a esto se conoce como retorno covariant. ❑ No deberá tener un modificador de acceso mas restrictivo. ❑ Puede tener un modificador de acceso menos restrictivo. ❑ No deberá lanzar nuevas o más amplias excepciones checked. ❑ Puede lanzar algunas o más estrechas excepciones checked o cualquier excepción no checked. ❑ Una sub clase usa super.overridenMethodName() para invocar a la versión del metodo en la súper clase. ❑ Sobre carga significa reusar el nombre del metodo pero con diferentes argumentos. ❑ Los métodos sobre cargados Oscar Vásquez Flores (eoscarvf@gmail.com )
  • 4. Oracle Certified Professional, Java SE 6 Programmer (1Z0-851) - Guía practica 5 de 7. ❑ Deberá tener una lista diferente de argumentos. ❑ Puede tener un diferente tipo de retorno, si la lista de argumento son diferentes. ❑ Puede tener diferente modificado de acceso. ❑ Puede lanzar excepciones diferentes. ❑ Los métodos de una súper clase pueden ser sobre cargados en una sub clase. ❑ Polimorfismo aplica para sobre escritura y no para sobre carga. ❑ Object type (not the reference variable's type), determines which overridden method is used at runtime. El tipo del objeto (Cuando la variable es deferente tipo), determina cual ❑ Reference type determines which overloaded method will be used at compile time. 5.5. Desarrollar código que implemente las relaciones “IS-A” y/o “HAS- A” ❑ La herencia permite a una clase ser una sub clase de una súper clase y de esa forma heredar los miembros de la súper clase. ❑ La herencia es un concepto clave que esta relacionado a IS-A, polimorfismo, sobre escritura, sobre carga y casting. ❑ Todas las clases(excepto la clase Object) son sub clases de Object. Oscar Vásquez Flores (eoscarvf@gmail.com )