Documentos de Académico
Documentos de Profesional
Documentos de Cultura
TEMA 6 Encapsulación
TEMA 6 Encapsulación
03/14/202 3
4
public class Cuadrado { public class Cuadrado {
} }
El paradigma OO pretende:
Separar las cosas que cambian de las que permanecen iguales.
API
• Ajustar volumen Implementación
Cliente • Tubos catódicos
• Cambiar canal
• Encender/Apagar • 20’’ y 22 Kg
• Sony Triniton
El cliente necesita
saber cómo usar el La implementación
API necesita saber cual
API implementar
03/14/202 6
El cliente y la implementación se ponen de4 acuerdo en el API
Ejemplo Intuitivo
API
• Ajustar volumen Implementación
Cliente • LED – Pantalla HD
• Cambiar canal
• Encender/Apagar • 40’’ y 12 Kg
• Samsung Smart TV
El cliente necesita
saber cómo usar el
API La implementación
necesita saber cual
API implementar
Se puede substituir con una mejor implementación 7
03/14/202 sin impactar el cliente
4
Encapsulación
03/14/202 8
4
Interfaz de clase
03/14/202 9
4
PROTEGER LOS ATRIBUTOS
03/14/202 10
4
Atributos Accedidos Libremente
public class Persona {
} 03/14/202 11
4
Ejemplo
03/14/202 12
4
public class Persona {
}
03/14/202 14
4
Usando la clase - OK
public class ClientePersona2 {
03/14/202 15
4
Usando la clase – NO OK
public class ClientePersona3 {
03/14/202 16
4
Reglas Visibilidad Java
+ public
# protected
~ sin modificador
- private
03/14/202
4
Reglas Visibilidad Java más especifica
Atributo
UML Modificador Clase Paquete Atributo en
Subclase del en Sub
Resto
mismo clase de
paquete sub
paquete
+ public
# protected
~ sin
modificador
- private
03/14/202
4
"Para que pueda surgir lo posible. Es preciso intentar una y otra
vez lo imposible". (Hermann Hesse)