Vous êtes sur la page 1sur 10

PROGRAMACIN ORIENTADA A OBJETOS

Clase 5 y 6

Prof: Ing. Karla Abad Facultad de Sistemas y Telecomunicaciones

Encapsulamiento de Clases

Las clases en Java se agrupan por familias que se denominan paquetes (packages). Todas las clases pertenecen a un paquete. Ej. La clase String pertenece al paquete java.lang y se dice que su nombre completo es: java.lang.String A la hora de referirnos a una clase, podemos poner el nombre completo ej: java.lang.String nombreAlumno= Luis Morales"; Java permite referirnos directamente a las clases del paquete java.lang: String nombreAlumno= Luis Morales";
Prof: Ing. Karla Abad Facultad de Sistemas y Telecomunicaciones

Encapsulamiento de Clases
A qu paquete pertenecern nuestras clases ????

Debemos explicitarlo: package nombrePaquete; class xxx { ... } Si no escribimos package, java asigna la clase a un paquete annimo por defecto. Ventajas de los Paquetes en Java:

Permite mantener nuestras clases ordenadas segn su funcin. Ayuda a evitar la colisin de nombres, dos clases pueden tener el mismo nombre si se encuentran en paquetes distintos.
package zoo; class Animal{ ... } package veterinaria; class Animal{ ... }
Prof: Ing. Karla Abad Facultad de Sistemas y Telecomunicaciones

Ej:

Encapsulamiento de Clases

Los paquetes son los elementos que se asocian a las llamadas libreras. Cuando se trabaja en c o c++, y se requera libreras ya implementadas, se recurra a los #include. Java nos proporciona la palabra reservada import para obtener los paquetes (package) donde se encuentran los elementos que necesitamos. Existen dos formas de utilizar la palabra reservada import: import java.util.*; Lo que nos trae todas la clases definidas dentro del paquete o,

import java.util.Random; Lo que nos trae la clase Random definida dentro del paquete.

Ejemplo concesionaria/Autos.java
Prof: Ing. Karla Abad Facultad de Sistemas y Telecomunicaciones

Modificadores de acceso: miembros

Se pueden establecer distintos niveles de encapsulacin u ocultamiento para los miembros de una clase (atributos y mtodos).

Paquetes (package): mecanismo para agrupar clases que tienen algo en Prof: Ing. Karla Abad comn.
Facultad de Sistemas y Telecomunicaciones

Modificadores de acceso:miembros

Los distintos modificadores de acceso quedan resumidos en la siguiente tabla:


Otra clase del La misma clase mismo paquete public protected default private X X X X X X X Subclase X X Otra clase de otro paquete X

Prof: Ing. Karla Abad Facultad de Sistemas y Telecomunicaciones

Modificadores de acceso: miembros

Como permitir el acceso a un miembro para todos los dems objetos? Como se accede a los miembros (atributos y mtodos ) de un objeto?

En JAVA a travs del uso de operador .


Objeto.atributo Objeto.metodo

Prof: Ing. Karla Abad Facultad de Sistemas y Telecomunicaciones

Modificadores de acceso: miembros

Definir una clase llamada Persona la cual es de acceso pblico. Definir 3 atributos

nombre padre madre

Definir mtodos para:


Obtener los datos del padre (getPadre) Obtener los datos la madre (getMadre) Establecer el nombre de la persona (setNombre) Obtener el nombre de la persona (getNombre) Ejercicio: Persona.java, Familiar.java
Prof: Ing. Karla Abad Facultad de Sistemas y Telecomunicaciones

Modificadores de acceso: Clases


Modificadores de acceso para clases
public - Todo el mundo puede usar la clase. Se pueden crear instancias de esa clase, siempre y cuando alguno de sus constructores sea accesible. sin modificador - La clase puede ser usada e instanciada por clases dentro del package donde se define.

Las clases no pueden declararse ni protected , ni private .

Ejercicio: Pariente.java
Prof: Ing. Karla Abad Facultad de Sistemas y Telecomunicaciones

Ejercicio en clase

El zoolgico llamado Madagascar zoo cuenta con los siguientes animales: un len, (Alex), una jirafa (Melman), una hipoptamo (Gloria), una cebra (Marty). El dueo del zoolgico nos ha pedido un reporte de los animales existentes que contenga sus caractersticas y estado de salud. Para definir el estado de nuestros animales necesitamos que la veterinaria del zoolgico nos indique si el animal se encuentra sano, en tratamiento o enfermo. Por otro lado un circo de la ciudad hace entrega de tres adorables pinginos para nuestro zoolgico. Notas: Entregar un documento escrito con las definiciones UML de las clases a utilizar. Utilizar dos paquetes diferentes para zoolgico y circo. Todos los atributos de clase debern ser privados. Utilice los conceptos de encapsulamiento para resolver el ejercicio.