Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de:...

62
Objetos y Clases Lic. MSc. Corina Flores Villarroel Universidad Mayor de San Simón Facultad de Ciencias y Tecnología Corina Flores Villarroel UMSS - Programa MEMI

Transcript of Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de:...

Page 1: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Objetos y Clases

Lic. MSc. Corina Flores Villarroel

Universidad Mayor de San SimónFacultad de Ciencias y Tecnología

Corina Flores Villarroel UMSS - Programa MEMI

Page 2: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Contenido

• Presentación del tema

• Objetivos

• Contenidos

• Actividades

• Síntesis

• Evaluación

Corina Flores Villarroel UMSS - Programa MEMI

Page 3: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Objetivos

• Que el estudiante sea capaz de:

– Explicar con sus propias palabras los conceptosbásicos de la Programación Orientada a Objetos(POO).

• ¿Qué es POO?, ¿cuál es su principal característica oprincipio?

• ¿Qué es un objeto?

• ¿Qué es ua clase?

• ¿Qué se entiende por atributos?

• ¿Qué son los métodos?

Corina Flores Villarroel UMSS - Programa MEMI

Page 4: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Programación Orientada a Objetos

• La Programación Orientada a Objetos, es un paradigma o modelo que utiliza objetos comola base de construcción. Al decir, que es un paradigma nos referimos a una serie de pautas y un estilo para que sigan los programadores.

Corina Flores Villarroel UMSS - Programa MEMI

Page 5: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Programación Orientada a Objetos

• La ProgramaciónOrientada a Objeto(POO), es un paradigma de programación en que un programa se compone de objetos y sus interacciones.

Corina Flores Villarroel UMSS - Programa MEMI

Page 6: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Programación Orientada a Objetos

• La POO, imita al mundo real … los objetosestan compuestos por otros objetos máspequeños, con los cuales se puedeninteractuar.

Corina Flores Villarroel UMSS - Programa MEMI

Page 7: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Programación Orientada a Objetos

• Por ejemplo:

Corina Flores Villarroel UMSS - Programa MEMI

Clases

Objetos

Métodos

Atributos

Declaraciones

Expresiones

Operadores

Page 8: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Programación Orientada a Objetos

Principio: una de las características principales de la POO es …

1. Abstracción, es suprimir y ocultar algunosdetalles de un proceso o de un elemento, pararesaltar algunos aspectos, detalles o estructuras.

La abstracción es la forma en que nuestramente modela la realidad, formando los objetos. Por eso se crea objetos en los programas que simulen los comportamientosde los objetos de un mundo real.

Corina Flores Villarroel UMSS - Programa MEMI

Page 9: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Programación Orientada a Objetos

Principio:

1. Abstracción, ejemplo …

Cuando pensamos en un automóvil, no nospreocupamos de sus componentes más pequeños: el asiento, el motor, el tipo de llantas, los espejos, etc., sino, que lo vemos como una entidad uobjeto, esto es abstraer!!! … con tal que podamosinteractuar con él para satisfacer nuestranecesidad de desplazarnos por ejemplo.

Corina Flores Villarroel UMSS - Programa MEMI

Page 10: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Conceptos Básicos

• Programa: Conjunto de instrucciones, comandos, órdenes y procedimientos escritos en un lenguaje de programación para que una computadora pueda realizar una tarea determinada de manera exacta y rápida.

Un programa debe caracterizarse

por ser:

• Correcto

• Completo

• EficienteCorina Flores Villarroel UMSS - Programa MEMI

Page 11: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Objetos

¿Qué es un objeto?

Es una entidad en la que se basa la POO. Se

denomina también como un individuoparticular, o una instancia de un clase.

Corina Flores Villarroel UMSS - Programa MEMI

AGRUPACIÓN de autos querepresenta a la clase AUTOS

OBJETORepresentación específica y

concreta de UN AUTO a partir de ese grupo de autos

Page 12: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

ObjetosAplicando el concepto de Abstracción a la comprensiónde una cosa (objeto), en función de sus característicasy comportamientos

Continuando con el ej.

Características

Comportamiento

•Color •Marca•Modelo•Placa

•getColor() •mostrarKilometraje()•Acelerar()

Objeto

Corina Flores Villarroel UMSS - Programa MEMI

Page 13: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

ObjetosLos objetos son entidades que combinan:

• estado (atributo),

• comportamiento (método) e

• identidad

ESTADO, se refiere a laasignación de valores concretos(datos) a los atributo.Ej. Color = “amarillo”;COMPORTAMIENTO, esta

definido por los metodos conque puede operar dicho objeto,ie, que operaciones se puederealizar con él.Ej. mostrarKilometraje()

IDENTIDAD,propiedad de unobjeto que lo diferencia delrestoEj. auto1

Corina Flores Villarroel UMSS - Programa MEMI

auto1

Page 14: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Resumiendo …

La POO concibe a la programación como un grupo de objetos que trabajan juntos .Porejemplo Características

(ATRIBUTOS)

Corina Flores Villarroel UMSS - Programa MEMI

Page 15: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Resumiendo

• Un objeto es la materialización de una clase. Pero, ¿qué es una clase?

Corina Flores Villarroel UMSS - Programa MEMI

Page 16: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Clases

Define una categoría de objetos, en otraspalabras, son plantillas que permiten crearobjetos a partir de ellas. Estan compuestasde:

Características(ATRIBUTOS)

Comportamiento(METODOS)

Clase

SIMILARES(comunes)

•Color •Marca•Modelo•Placa

•getColor() •mostrarKilometraje()•Acelerar()

Corina Flores Villarroel UMSS - Programa MEMI

Page 17: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Por ejemplo

Corina Flores Villarroel UMSS - Programa MEMI

Page 18: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Por ejemplo

Corina Flores Villarroel UMSS - Programa MEMI

Clase Monitor

Page 19: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Por ejemplo

Corina Flores Villarroel UMSS - Programa MEMI

Clase Monitor

Monitor Samsumg

Monitor LG

Monitor Sony

Page 20: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Creamos distintos objetos a partir de la clase

Corina Flores Villarroel UMSS - Programa MEMI

Monitor Samsumg

Monitor LG

Monitor Sony

Page 21: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Clases

¿Qué es una clase?Una clase es una agrupación o colección de objetosque comparten características y comportamientocomunes.

La Clase representa una abstracción, la esencia que compartenlos objetos.

* Un objeto es un ejemplo de una clase.* Un objeto no es una clase, y una clase no es un objeto

Las clases muestran:• visión externa de comportamiento (interface)• visión interna (implementación)

Corina Flores Villarroel UMSS - Programa MEMI

Page 22: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Representación de Clases

Características(Atributos)

Nombre Clase

Comportamiento(Métodos )

Una clase se representa en un modelo(representación gráfica) como se ve en la figura:

Corina Flores Villarroel UMSS - Programa MEMI

CABECERA de la clase

CUERPO de la clase

class nombreClase

}

Declaración atributos

Definición de métodos

{

Page 23: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Declaración de Atributos

Corina Flores Villarroel UMSS - Programa MEMI

En la declaración se distinguen 3 elementos :

• El nombre del tipo de dato o tipo de valores que puedetomar un atributo.

• El nombre del atributo, denominado tambiénidentificador o variable.

• El separador punto y coma (;) que marca el fin de unadeclaración

Page 24: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Declaración de Atributos

Corina Flores Villarroel UMSS - Programa MEMI

class Auto{// Declaración de atributos

String color ;

String marca ;

int modelo ;

String placa ;

// Declaración y definición de métodos

}

Tipo Dato Identificador

Separadores

Page 25: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Tipo de Datos

NuméricasRepresentan el valor

numérico especificado.se puede realizar

operaciones aritméticas. Ejemplo: 3, 100 ,Pi

Tipos de Datos

ConstantesDatos que no cambian

su valor durante eldesarrollo o ejecución

de un programa

VariablesDatos que cambian omodifican su valordurante el desarrolloo ejecución de unpograma.

AlfanuméricasRepresentan los letreros

especificadosno se pueden realizar operaciones aritméticasEjemplo: “CASA” “10”

NuméricasAlmacenan datos

numéricos: Trabajo, Contadoras, Acumuladoras

Dimensionadas.Ejemplo: SUMA= A+B

AlfanuméricasAlmacenan letras,

números y caracteresespeciales.

Ejemplo: A$= “España”RESULTADO = “Aprobado”

Corina Flores Villarroel UMSS - Programa MEMI

Define un conjuntode valores y lasoperaciones sobreestos valores.

Page 26: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

TAREA

• Averiguar la forma como se representan los tipos de datos en Java.

• Ej. Numéricos (entero)….

Corina Flores Villarroel UMSS - Programa MEMI

Int

Short

Page 27: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Tipo de Dato: Constante

• Datos que no cambian su valor durante el desarrollo o ejecución de un programa

Corina Flores Villarroel UMSS - Programa MEMI

3.141592Valor_de_Pi

double Valor_de_Pi ;

= ;

Page 28: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Tipo de Dato: Variable

• Datos que cambian o modifican su valordurante el desarrollo o ejecución de unprograma.

Corina Flores Villarroel UMSS - Programa MEMI

0velocidad 60120

Estado de un objeto

int velocidad ;

= ;

Page 29: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Tipo de dato: Asignación

• Las variables o llamadas también comocontenedoras tienen la capacidad de recibirvalores de acuerdo al tipo de dato.

• Del ejemplo …

int velocidad = 120 ;

Corina Flores Villarroel UMSS - Programa MEMI

SímboloASIGNACIÓN

Ambos deben corresponder al MISMO tipo de dato

Page 30: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Corina Flores Villarroel UMSS - Programa MEMI

int velocidad = 120 ;

Tipo de dato: Asignación

TipoDato NombVariable SimbAsignación Valor

Page 31: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Iniciamos con BlueJ

1. Creamos un proyecto

2. Ingresamos en el entorno de BlueJ

3. Las herramientas dispuestas al lado izquierdo de la ventana, permiten crear: Clases, establecer relaciones entre clases, yefectuar la compilación del código.

4. Se deja algunas direcciones de tutoriales de BlueJ para su revisión:

– www.bluej.org/tutorial/tutorial-spanish-1.pdf

– http://www.slideshare.net/anaclos/uso-de-bluej-presentation

Corina Flores Villarroel UMSS - Programa MEMI

Page 32: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Iniciamos con BlueJ

• Algunas recomendaciones antes de iniciar a escribir código.

– En la cabecera del código, completar con datos del autor del programa y la versión o fecha. Así:

Corina Flores Villarroel UMSS - Programa MEMI

/*** Write a description of class Auto here.* * @author (CFV) * @version (30-09-2011)*/

Page 33: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Iniciamos con BlueJ … cont

• Algunas recomendaciones antes de iniciar a escribir código.

– Nominación de clase … comenzar con mayúscula, singular y dar un nombre significativo. En cambio los atributos, siempre se escriben en minúsculas

– Mantener claramente identificando la estructura del programa, con comentarios significativos donde corresponde, esto es documentarinternamente el código

Corina Flores Villarroel UMSS - Programa MEMI

public class Auto{

// Aquí se describen las característicaso atributos de la clase AUTO:// marca, es un atributo de tipo cadena para representar a la marca de un auto// modelo, representa un atributo para indicar el modelo de un auto. Ej: 2009private String marca;

Page 34: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Operadores

Tipos de OperadoresPermiten realizar operaciones

aritméticas, lógicas o de comparación con los diferentes

tipos de datos

Aritméticos: + - * /

Comparación= < > >= <=

Lógicos:NOT NegaciónAND ConjunciónOR Disyunción

Corina Flores Villarroel UMSS - Programa MEMI

Símbolo queindica quéoperación debellevarse a cabo

Page 35: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Métodos

Corina Flores Villarroel UMSS - Programa MEMI

• Definen el comportamiento de una clase

• Es la agrupación de un conjunto de instruccionesque resuelven una tarea particular.

• Una invocación (llamada) a un método activa esecomportamiento sobre un determinado objeto.

Page 36: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Métodos

Corina Flores Villarroel UMSS - Programa MEMI

• La definición de un método tiene dos partes:

– El encabezamiento

– El cuerpo

• Así por ejemplo ...

tipoRetorno nombreMetodo( [lista_de_parámetros] )

{

cuerpoMetodo

}

Page 37: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Corina Flores Villarroel UMSS - Programa MEMI

• Encabezamiento de un método– Contiene a su vez tres elementos:

1. Tipo de resultado o retorno

2. Nombre del método

3. La lista de parámetros que se encuentran entre ()

Ejemplo:

Métodos

public String getColor(){

// put your code herereturn color;

}

1 2 3

Page 38: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Iniciamos con BlueJ … cont

• Algunas recomendaciones antes de iniciar a escribir código.

– Nominación de métodos de la clase, comienzan con minúsculasy generalmente es la combinación de dos o tres palabras.

Corina Flores Villarroel UMSS - Programa MEMI

public String marcaAuto()

{return marca;

}

public int modeloAuto(){

return modelo;}

Page 39: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Métodos

Corina Flores Villarroel UMSS - Programa MEMI

• El tipo de retorno de un método dependerá de:

• Si después de procesar los datos, al método no se pide quedevuelva un valor, el tipo de retorno será void.

• En cambio, si se pide por ejemplo, calcular el salario líquidode una persona, el tipo de retorno estará en función al resultado que se produzca del cálculo de salario, es decir: el tipo de retorno puede ser int o double

• Para devolver un valor desde un método, se utiliza la palabraclave return. Como última instrucción en el cuerpo del método.

Page 40: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Métodos

Corina Flores Villarroel UMSS - Programa MEMI

Nombre del método

• El nombre del método puede ser cualquier identificador legal en Java.

• Un identificador legal en Java es aquel que comprende una serie de caracteres. Así:

calculaSalario()

imprimeListas()

buscaUnEmpleado()

• No puede ser sin embargo, el mismo identificador que una palabrareservada o ser igual al nombre de una variable que aparece en su cuerpodel método.

Page 41: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Métodos

Corina Flores Villarroel UMSS - Programa MEMI

Parámetro o argumento

• Es una variable que es recibida por un método. Un parámetroinfluye en el comportamiento o el resultado de la ejecucióndel método.

Una variable es un espacio de memoriareservado para almacenar un valor quecorresponde a un tipo de dato

Page 42: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Métodos

Corina Flores Villarroel UMSS - Programa MEMI

PARAMETROS

ACTUALES, permiten enviarvalores al método. Se encuentran generalmente en la llamada al método.

FORMALES, permiten recibirvalores para usar dentro el método. Se encuentran en la definición del método.

Page 43: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Métodos

Corina Flores Villarroel UMSS - Programa MEMI

Parámetrosformales

public void setKilometraje(int kilom)

{

kilometraje = kilom;

}

Parámetrosactuales

auto1.setKilometraje(45) ;

Page 44: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Llamada a método

Corina Flores Villarroel UMSS - Programa MEMI

Existen dos formas de invocar: interna y externa

• Para llamar a un método interno, se requiere:

nombreMetodo (lista de parámetros)

Un nombrerelacionado con la tarea que realizará el método.

Todos los valoresnecesarios para ejecutar la tarea, sin especificar sustipos

setValor(double respuesta) ;Así:

Page 45: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Llamada a método

Corina Flores Villarroel UMSS - Programa MEMI

• La llamada o invocación a un método externo se realizacon el fin de que un objeto pueda hacer uso de los servicios que presta el método.

• Para realizar la invocación se utiliza la siguiente notación:

Objeto . método()

Operador

Objeto, es el nombre

del objeto o la instancia

de una clase.

Método, es el nombre

del método que pertenecea la clase

Page 46: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Paso de parámetros

Corina Flores Villarroel UMSS - Programa MEMI

• Al hecho de que los parámetros actuales envian valoresque los parámetros formales de un método reciben se denomina: PASO DE PARAMETROS.

• Esto sucede en el momento en el que se invoca al método. Por ej.:

auto1.setKilometraje(45);

void setKilometraje(int kilom)

Page 47: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Paso de parámetros

Corina Flores Villarroel UMSS - Programa MEMI

Es importante que:

Tanto los parametros actuales y formales de un método,deben coincidir en :

• Número• Tipo de datos con los que se declaran• El orden en el que aparecen en la lista

Page 48: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

El constructor

Corina Flores Villarroel UMSS - Programa MEMI

Permite la creación de objetos quepertenecen a una clase.

• Tiene el mismo nombre de la clase

• No tiene un tipo de retorno

• Siempre es el primero que se escribe después de la declaración de atributos.

• Siempre es de acceso público

• Asigna valores iniciales a los atributos de la clase.

Page 49: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

El constructor

Corina Flores Villarroel UMSS - Programa MEMI

public class Auto{

// Declaración de atributosprivate String color;private String marca;private int modelo;private String placa;

public Auto(){

// Constructor 1color = "azul";marca = "ford sport";modelo = 2010;placa = "777CBA";

}

public Auto(String color, String marca, int mod, String pl){

// Constructor 2this.color = color;this.marca = marca;modelo = mod;placa = pl;

}

Page 50: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Creación de objetos

Corina Flores Villarroel UMSS - Programa MEMI

• Recordemos que … podemos crear diferentesobjetos de una clase, tantos como necesitemos!!!

…..

Page 51: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Creación de objetos

Corina Flores Villarroel UMSS - Programa MEMI

• Para crear un objeto o una instancia de una clase

– Empleamos la palabra reservada new

– Declarar el identificador que representará al objetocon el tipo de dato que hace referencia a la clase.

– Después invocamos al constructor de la clase.

Page 52: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Creación de objetos

Corina Flores Villarroel UMSS - Programa MEMI

• Así por el ejemplo : Creamos un objeto de nombre auto1

a.) Declaramos el objeto

Auto auto1;

nombreClase nombreObjeto

Llamada al constructor de la clase

b.) Definimos el objeto

Auto auto1 = new Auto( “amarillo”, “Nissan”, 2006, “241LPZ”) ;

Page 53: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Creación de objetos

Corina Flores Villarroel UMSS - Programa MEMI

Abrir el proyectoClasesObjetos.zip de www.cs.umss.edu.bo

Estudiar el código!!

Page 54: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Corina Flores Villarroel UMSS - Programa MEMI

Page 55: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Ejercicios

• A continuación … trabajaremos en parejas,

Corina Flores Villarroel UMSS - Programa MEMI

Un equipo de futbol esta constituído por 11 jugadores, dependiendo del sistema de juego que determine el entrenador los jugadores cubren diferentes roles en el campo de juego, porejemplo: mediocampistas, delanteros, … etc. Un entrenador antes de ingresar al campo de juego debe tener conformado el equipocon los jugadores que cree conveniente, para lo que define unalista con los siguientes datos: nombre del jugador, edad, nacionalida, un número que lo identifique y el rol que cumplirádurante el juego.

Page 56: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Ejercicios

• A continuación … trabajaremos en parejas,

Corina Flores Villarroel UMSS - Programa MEMI

Se pide:

1. Identificar las clases

2. Los atributos de las clases identificadas.

3. Los métodos de las clases identificadas. Un métodoque devuelva el número asignado a un jugador y, otroque muestre simplemente el nombre de un jugador.

Page 57: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Ejercicios

• A continuación … trabajaremos en parejas,

Corina Flores Villarroel UMSS - Programa MEMI

Se pide:

4. Representar el modelo de clases

5. Traducir el modelo en código

Page 58: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Ejercicios

• A continuación … trabajaremos en parejas,

Corina Flores Villarroel UMSS - Programa MEMI

Se pide:

7. Escribir el constructor para representar un jugadorcon todos los datos indicados en la descripción.

8. Crear al menos dos objetos utilizando el constructor

9. Con el objeto creado, hacer llamadas a los métodos

Page 59: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Metacognición

Trabajaremos de forma individual 25´, reflexionasobre

• ¿Qué haz aprendido?

• Anota los conceptos que crees no habercomprendido

Corina Flores Villarroel UMSS - Programa MEMI

Page 60: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Ejercicios

Verifica si las siguientes afirmaciones son falsos o verdaderos. Asimismo, verifica si los trozos de código estan bién escritos, si crees que hay error, indicá cuál?, y reescribe el código correcto.

1) Una clase, al igual que un objeto tiene atributos y define suscomportamientos V F

2) A través de los atributos, se determinan el estado de un objeto V F

3) Supongamos que tenemos el siguiente códigopublic void Alarma(Int rinrin){

return suena=true;}

Corina Flores Villarroel UMSS - Programa MEMI

Examina si existe un error, en caso de advertir, indica ¿cuál es?

Page 61: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Ejercicios

4) Sea el siguiente constructor

Estudiante (int codigo, String nombre, String carrera){

}

Tomando en cuenta el constructor, creamos objetos estudiantes

Estudiante est = estudiante(“Ana”, 7072011, Sistemas);

Estudiante est = estudiante(2002CBA, “Lola”, “Informatica”);

Corina Flores Villarroel UMSS - Programa MEMI

¿Detectas algún error?, ¿cuál (es)?. Explica! … intenta escribir la forma correcta.

Page 62: Capítulo 1: Objetos y Clases - cs.umss.edu.bo€¦ · Objetivos • Que el estudiantesea capaz de: –Explicar con sus propias palabras los conceptos básicos de la Programación

Ejercicios

Sea el modelo de clase

Traduce el modelo a código Java, respetando la sintaxis.

Corina Flores Villarroel UMSS - Programa MEMI

Figura

tamañocolortipo

indicarTamaño()establecerTipo(Boolean t)