Curso poo2

Páginas: 5 (1207 palabras) Publicado: 8 de noviembre de 2013
Programación Orientada a
Objetos en Java
Curso 2006 - 2007

Tema 3 – Clases y Objetos

Gonzalo Méndez Pozo
Dpto. de Ingeniería de Software e Inteligencia Artificial
Universidad Complutense de Madrid

Clases y Objetos
Programación Estructurada:
Tipos Abstractos de Datos (TAD)

Programación Orientada a Objetos:
Clases y objetos

Las clases y los TAD no son
equivalentes, aunque sepuede
establecer cierta analogía

Gonzalo Méndez - Dpto. Ingeniería de Software e Inteligencia Artificial

1

Objetos
Son la parte ejecutable de la
programación orientada a objetos
Se manejan a través de variables
Pertenecen a una clase

Gonzalo Méndez - Dpto. Ingeniería de Software e Inteligencia Artificial

Clases
Son la plantilla a partir de la cual se crean
los objetosFormadas por:
Nombre
Atributos
Métodos

Gonzalo Méndez - Dpto. Ingeniería de Software e Inteligencia Artificial

2

Clases
En general, interesa que los atributos no
se puedan tocar directamente desde
fuera de la clase
privados
Los métodos son la forma de
comunicarse con la clase para pedirle que
haga cosas (servicios)
públicos o
privados
Los métodos get y set “hacen trampa”
GonzaloMéndez - Dpto. Ingeniería de Software e Inteligencia Artificial

Errores de la POO
Clase ≠ Tipo
Atributos ≠ Estado
Métodos ≠ Comportamiento
Los objetos no imitan la realidad
Los objetos no son funciones + datos
Objeto = cosa

Gonzalo Méndez - Dpto. Ingeniería de Software e Inteligencia Artificial

3

Declaración de Clases en Java
public class Circulo
{
private int centro_x,centro_y, radio;
public void paint (Graphics g)
{
g.drawCircle (centro_x, centro_y, radio,
Color.GREEN);
}
}
Gonzalo Méndez - Dpto. Ingeniería de Software e Inteligencia Artificial

Declaración de Clases en Java
Hay que declarar la visibilidad de la clase,
sus atributos y sus métodos
En cada fichero
una clase pública con el mismo nombre del
fichero
0..n clases privadas

Gonzalo Méndez- Dpto. Ingeniería de Software e Inteligencia Artificial

4

Uso de Objetos
Primero es necesario declarar una
variable perteneciente a la clase:
Circulo mi_circulo;

Después hay que crear el objeto:
mi_circulo = new Circulo();

Ahora ya se puede llamar a los métodos
del objeto:
mi_circulo.paint();
Gonzalo Méndez - Dpto. Ingeniería de Software e Inteligencia ArtificialConstructor
Método especial que indica lo que se hace
cuando se crea un objeto
Tiene el mismo nombre que la clase
Pueden existir varios constructores con
distintos parámetros
Si no declaramos ninguno se usa el constructor
por defecto
Si declaramos alguno es obligatorio declarar
también el constructor por defecto
Gonzalo Méndez - Dpto. Ingeniería de Software e Inteligencia Artificial

5 Constructor
Public class Circulo
{
int c_x, c_y, radio;

Circulo (int x, int y, int r)
{
c_x = x;
c_y = y;
radio = r;
}

Circulo (int x, int y)
{
c_x = x;
c_y = y;
radio = 1;
}

Circulo()
{
c_x=c_y=radio=1;
}
}

Gonzalo Méndez - Dpto. Ingeniería de Software e Inteligencia Artificial

Un objeto especial: this
La palabra reservada this sirve para que
un objeto hagareferencia a sí mismo
Usos:
Un objeto se pasa a sí mismo como
parámetro al llamar a un método de otro
objeto
Especificar que un objeto utiliza sus
métodos o sus atributos: no es obligatorio,
pero a veces es necesario
Gonzalo Méndez - Dpto. Ingeniería de Software e Inteligencia Artificial

6

Un objeto especial: this
public class Circulo
{
public void paint ()
{
Ventana.paint(this);
}
}public class Circulo
{
int x,y,r;
Circulo(int x, int y, int r)
{
this.x = x;
this.y = y;
this.r = r;
}
}

Gonzalo Méndez - Dpto. Ingeniería de Software e Inteligencia Artificial

Métodos
De manera general, la declaración de un método en
java es de la forma
modo_acceso modificadores tipo_retorno nombre_metodo (argumentos)
{
Cuerpo del método
}

Donde
modo_acceso: public,...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Curso
  • Cursos
  • E Cursos
  • CURSO
  • curso
  • cursos
  • curso
  • Curso

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS