2 Clases y Objetos en JAVA

Páginas: 18 (4478 palabras) Publicado: 10 de marzo de 2015
Tema 2: Clase y objetos en Java
Programación Orientada a Objetos
Curso 2009/2010
Begoña Moros Valle

Índice
„
„
„
„
„
„
„
„
„

Introducción
Clases
Objetos
Semántica referencia
Métodos y mensajes
Creación de objetos
Modelo de ejecución OO
Genericidad
Principios de diseño de clases
Tema 2

Clases y Objetos

2

Introducción
Programa OO

Colección estructurada
de clases

Clase

Implementación deun
Tipo Abstracto de Datos (TAD)

Objeto

Una instancia de una clase

Los objetos se comunican mediante mensajes
Tema 2

Clases y Objetos

3

Clases
„
„

„

DEFINICIÓN: Implementación total o parcial de un TAD
Entidad sintáctica que describen objetos que van a
tener la misma estructura y el mismo
comportamiento.
Doble naturaleza: Módulo + Tipo de Datos
„ Módulo (concepto sintáctico)
„

„

Mecanismopara organizar el software

Tipo (concepto semántico)
„

Tema 2

Mecanismo de definición de nuevos tipos de datos: describe
una estructura de datos (objetos) y las operaciones
aplicables.
Clases y Objetos

4

Módulo ≠ Tipo. Ejemplo Modula2
DEFINITION MODULE Pila;
EXPORT QUALIFIED PILA, vacia, pop, push, tope;
TYPE PILA;
PROCEDURE
PROCEDURE
PROCEDURE
PROCEDURE
PROCEDURE

vacia(pila:PILA):BOOLEAN;
nuevaPila: PILA;
pop (VAR pila:PILA):INTEGER;
push (VAR pila:PILA; valor:INTEGER);
tope (VAR pila:PILA):INTEGER;

END Pila;
Tema 2

Clases y Objetos

5

Especificación separada de la implementación
IMPLEMENTATION MODULE Pila;
TYPE PILA = POINTER TO Node;
Node = RECORD
valor:INTEGER;
siguiente:PILA;
END;
PROCEDURE pop (VAR pila:PILA):INTEGER;

END pop;
...
END Pila;

Tema 2

Clases y Objetos6

Componentes de un clase
„

Atributos:
„

„

Métodos:
„
„

„

Determinan una estructura de almacenamiento para cada
objeto de la clase
Operaciones aplicables a los objetos
Único modo de acceder a los atributos

Ejemplo: En una aplicación bancaria, encontramos objetos
“cuenta”. Todos los objetos “cuenta” tienen propiedades comunes:
„
„

atributos: saldo, titular, ...
operaciones: reintegro,ingreso, …

Definimos una clase CUENTA
Tema 2

Clases y Objetos

7

Ejemplo: Clase Cuenta
Cuenta
titular: String;
saldo: double;
reintegro(valor:double);
ingreso (valor:double);

Tiempo de ejecución

Tema 2

Definición de la clase
Atributos
Métodos

“José Martínez” titular
1200.0
saldo

Objeto Cuenta
Clases y Objetos

8

Clase Cuenta en Java
class Cuenta{
String titular;
double saldo;

ATRIBUTOSvoid ingreso (double cantidad){
saldo = saldo + cantidad;
}
void reintegro (double cantidad){
if (cantidad <= saldo)
saldo = saldo – cantidad;
MÉTODOS
}
}
Tema 2

Clases y Objetos

9

Ocultación de Información
„

A las características de una clase (atributos y
métodos) se les puede asignar un modificador
de visibilidad:
„

public:
„

„

private:
„

„

Característica pública, accesible desde todaslas clases
Característica privada, accesible sólo dentro de la clase
donde se define

Principio de diseño:
„
„

Todos los atributos de una clase son privados
Los métodos pueden tener distintos niveles de
visibilidad

Tema 2

Clases y Objetos

10

Clase Cuenta en Java
class Cuenta{
private String titular;
private double saldo;
public void ingreso (double cantidad){
saldo = saldo + cantidad;
}
publicvoid reintegro (double cantidad){
if (puedoSacar(cantidad))
saldo = saldo – cantidad;
}
private boolean puedoSacar(double cantidad){
return cantidad <= saldo;
}
}
Tema 2

Clases y Objetos

11

Acceso y modificación de atributos
„

La única forma de acceder a los atributos es a
través de métodos públicos
„

„

„

„

Métodos get Æ para consultar el valor del
atributo
Métodos set Æ para establecerel valor del
atributo

La implementación de los métodos set/get
depende del nivel de acceso de los atributos.
Se aísla al cliente de los cambios en la
estructura de datos.
Tema 2

Clases y Objetos

12

Clase Cuenta en Java
class Cuenta{
private String titular;
private double saldo;
public String getTitular(){
return titular;
}
//No setTitular porque es inmutable
public double getSaldo(){
return...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Java Objetos, Clases
  • Objeto y Clase (java)
  • Creación De Clases Y Objetos En Java
  • Clases y objetos en java
  • Clases, métodos y objetos en java
  • Clases Y Objetos Java
  • Clases y objetos-Tutorial java
  • Clases En Java

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS