14
Ing. Heber Gómez Hurtado Ing. Heber Gómez Hurtado UNIVERSIDAD SAN PEDRO TALLER DE PROGRAMACION I TALLER DE PROGRAMACION I Tema: Clases y Tema: Clases y Objetos Objetos

Taller 1 2

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

UNIVERSIDAD SAN PEDRO

TALLER DE PROGRAMACION ITALLER DE PROGRAMACION I

Tema: Clases y ObjetosTema: Clases y Objetos

Page 2: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

IntroducciónIntroducción

Programa OO

Clase

Objeto

Colección estructuradade clases

Implementación de un TAD

Una instancia de una clase

Los objetos se comunican mediante mensajes

Page 3: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

ObjetosObjetos ““Es una instancia de una clase, creada en tiempo de Es una instancia de una clase, creada en tiempo de

ejecución”ejecución” Es una estructura de datos formada por tantos Es una estructura de datos formada por tantos camposcampos

como como atributos atributos tiene la clase.tiene la clase. El El estadoestado de un objeto viene dado por el valor de los de un objeto viene dado por el valor de los

atributos.atributos.

Durante la ejecución de un programa OO se crearán un Durante la ejecución de un programa OO se crearán un conjunto de objetos.conjunto de objetos.

Page 4: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

Ejemplos de ObjetosEjemplos de Objetos

Page 5: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

ClasesClases Implementación total o parcial de un TADImplementación total o parcial de un TAD Entidad sintáctica que describen objetos que van a tener Entidad sintáctica que describen objetos que van a tener

la misma estructura y el mismo comportamiento.la misma estructura y el mismo comportamiento.

Cuentatitular: String;saldo: float;reintegro(valor:float);ingresar (valor:float);

Definición de la clase

Atributos

Métodos

“José Martínez”1200.0

Tiempo de ejecución

Objeto Cuenta

titularsaldo

Page 6: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

Componentes de un claseComponentes de un clase

AtributosAtributos• Determinan una estructura de Determinan una estructura de

almacenamiento para cada objeto de la almacenamiento para cada objeto de la claseclase

MétodosMétodos• Operaciones aplicables a los objetosOperaciones aplicables a los objetos• Único modo de acceder a los atributosÚnico modo de acceder a los atributos

Page 7: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

Relaciones entre clasesRelaciones entre clases

Ejemplo:

CuentaAhorro CuentaCorriente

Cuenta es cliente de PersonaCuentaAhorro es una especialización de Cuenta

Cuenta Personatitular

Page 8: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

Definición de Clases en JavaDefinición de Clases en Java

Cuenta

MonedaSaldo

IngresarRetirar

public class Cuenta{private String moneda; private double saldo;public void ingresar(…)public void retirar(…)}

Page 9: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

EncapsulamientoEncapsulamiento

Quien programa un objeto controla los métodos de acceso a su estado y su comportamiento

El programador puede (y debe) responsabilizarse de la corrección del código correspondiente a un objeto.

Page 10: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

ConveniosConvenios

Para identificar clases y objetos unívocamente, cada uno recibe un nombre diferente• mayúsculas <> minúsculas• Se pueden utilizar Pequeñas Frases• No se pueden usar acentos ni eñes

Las clases empiezan con letra mayúscula Los objetos empiezan con letra minúscula

Page 11: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

MétodosMétodos ConstructoresConstructores

• Usados para crear un objetoUsados para crear un objeto• Una clase puede tener múltiples constructores (utilizando Una clase puede tener múltiples constructores (utilizando

sobrecarga).sobrecarga).• Se ejecuta automáticamente al instanciarse un objeto de la Se ejecuta automáticamente al instanciarse un objeto de la

clase clase • El constructor tiene el mismo nombre de la clase y no tiene El constructor tiene el mismo nombre de la clase y no tiene

tipo de retorno.tipo de retorno. ConsultasConsultas

• extraen características del objetoextraen características del objeto ModificadoresModificadores

• Se encargan de modificar los atributos de la clase Se encargan de modificar los atributos de la clase DestructoresDestructores

• Se ejecutan automáticamente al terminarse el ciclo de vida del Se ejecutan automáticamente al terminarse el ciclo de vida del objeto.objeto.

• Una clase solo puede tener un destructor. Una clase solo puede tener un destructor.

Page 12: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

Ejemplos de MétodosEjemplos de Métodos

Declaración de Método ConstructorDeclaración de Método Constructor

public class Ejemplopublic class Ejemplo

{ {

private int x,w; private int x,w;

public Ejemplo(int i,int j) { x=i;w=j;} public Ejemplo(int i,int j) { x=i;w=j;}

int getX() { return x;} int getX() { return x;}

int getW() { return w;}int getW() { return w;}

} }

Page 13: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

Sobrecarga de MétodosSobrecarga de Métodos

La sobrecarga de métodos consiste La sobrecarga de métodos consiste en declarar métodos con el mismo en declarar métodos con el mismo nombre.nombre.

Se diferencian por los parámetros Se diferencian por los parámetros que reciben o que retornan. que reciben o que retornan.

Son métodos similares en los que Son métodos similares en los que únicamente cambia el tipo de dato y únicamente cambia el tipo de dato y cantidad de parámetros que han de cantidad de parámetros que han de utilizar. utilizar.

Page 14: Taller 1 2

Ing. Heber Gómez HurtadoIng. Heber Gómez Hurtado

Ejemplos de SobrecargaEjemplos de Sobrecarga

public class public class EjemploEjemplo

{ { private int a=0,b=0,c=0; private int a=0,b=0,c=0;

public Ejemplo(int x){a=x;} public Ejemplo(int x){a=x;}

public Ejemplo(int x,int y){a=x;b=y;}public Ejemplo(int x,int y){a=x;b=y;}

public Ejemplo(int x,int y,int z) {a=x;b=y;c=z;}public Ejemplo(int x,int y,int z) {a=x;b=y;c=z;}

} }