La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Lic. MSc. Corina Flores Villarroel

Presentaciones similares


Presentación del tema: "Lic. MSc. Corina Flores Villarroel"— Transcripción de la presentación:

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

2 Contenido Presentación del tema Objetivos Contenidos Actividades
Síntesis Evaluación Corina Flores Villarroel UMSS - Programa MEMI

3 Objetivos Que el estudiante sea capaz de:
Explicar con sus propias palabras los conceptos básicos de la Programación Orientada a Objetos (POO). ¿Qué es POO?, ¿cuál es su principal característica o principio? ¿Qué es un objeto? ¿Qué es ua clase? ¿Qué se entiende por atributos? ¿Qué son los métodos? Corina Flores Villarroel UMSS - Programa MEMI

4 Programación Orientada a Objetos
La Programación Orientada a Objetos, es un paradigma o modelo que utiliza objetos como la 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

5 Programación Orientada a Objetos
La Programación Orientada 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

6 Programación Orientada a Objetos
La POO, imita al mundo real … los objetos estan compuestos por otros objetos más pequeños, con los cuales se pueden interactuar. Corina Flores Villarroel UMSS - Programa MEMI

7 Programación Orientada a Objetos
Por ejemplo: Clases Objetos Métodos Atributos Declaraciones Expresiones Operadores Corina Flores Villarroel UMSS - Programa MEMI

8 Programación Orientada a Objetos
Principio: una de las características principales de la POO es … Abstracción, es suprimir y ocultar algunos detalles de un proceso o de un elemento, para resaltar algunos aspectos, detalles o estructuras. La abstracción es la forma en que nuestra mente modela la realidad, formando los objetos. Por eso se crea objetos en los programas que simulen los comportamientos de los objetos de un mundo real. Corina Flores Villarroel UMSS - Programa MEMI

9 Programación Orientada a Objetos
Principio: Abstracción, ejemplo … Cuando pensamos en un automóvil, no nos preocupamos 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 u objeto, esto es abstraer!!! … con tal que podamos interactuar con él para satisfacer nuestra necesidad de desplazarnos por ejemplo. Corina Flores Villarroel UMSS - Programa MEMI

10 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 Eficiente Corina Flores Villarroel UMSS - Programa MEMI

11 AGRUPACIÓN de autos que representa a la clase AUTOS
Objetos ¿Qué es un objeto? Es una entidad en la que se basa la POO. Se denomina también como un individuo particular, o una instancia de un clase. OBJETO Representación específica y concreta de UN AUTO a partir de ese grupo de autos AGRUPACIÓN de autos que representa a la clase AUTOS Corina Flores Villarroel UMSS - Programa MEMI

12 Objetos Aplicando el concepto de Abstracción a la comprensión de una cosa (objeto), en función de sus características y comportamientos Continuando con el ej. Color Marca Modelo Placa Características Objeto Comportamiento getColor() mostrarKilometraje() Acelerar() Corina Flores Villarroel UMSS - Programa MEMI

13 Objetos auto1 Los objetos son entidades que combinan:
estado (atributo), comportamiento (método) e identidad ESTADO, se refiere a la asignación de valores concretos (datos) a los atributo. Ej. Color = “amarillo”; COMPORTAMIENTO, esta definido por los metodos con que puede operar dicho objeto, ie, que operaciones se puede realizar con él. Ej. mostrarKilometraje() IDENTIDAD,propiedad de un objeto que lo diferencia del resto Ej. auto1 auto1 Corina Flores Villarroel UMSS - Programa MEMI

14 Resumiendo … La POO concibe a la programación como un grupo de objetos que trabajan juntos .Por ejemplo Características (ATRIBUTOS) Corina Flores Villarroel UMSS - Programa MEMI

15 Resumiendo Un objeto es la materialización de una clase. Pero, ¿qué es una clase? Corina Flores Villarroel UMSS - Programa MEMI

16 Clases SIMILARES (comunes)
Define una categoría de objetos, en otras palabras, son plantillas que permiten crear objetos a partir de ellas. Estan compuestas de: Color Marca Modelo Placa Características (ATRIBUTOS) SIMILARES (comunes) getColor() mostrarKilometraje() Acelerar() Comportamiento (METODOS) Clase Corina Flores Villarroel UMSS - Programa MEMI

17 Por ejemplo Corina Flores Villarroel UMSS - Programa MEMI

18 Por ejemplo Clase Monitor Corina Flores Villarroel
UMSS - Programa MEMI

19 Por ejemplo Clase Monitor Monitor Samsumg Monitor LG Monitor Sony
Corina Flores Villarroel UMSS - Programa MEMI

20 Creamos distintos objetos a partir de la clase
Monitor Samsumg Monitor LG Monitor Sony Corina Flores Villarroel UMSS - Programa MEMI

21 Clases ¿Qué es una clase?
Una clase es una agrupación o colección de objetos que comparten características y comportamiento comunes. La Clase representa una abstracción, la esencia que comparten los 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

22 Representación de Clases
Una clase se representa en un modelo (representación gráfica) como se ve en la figura: Características (Atributos) class nombreClase CABECERA de la clase Nombre Clase { Declaración atributos Definición de métodos CUERPO de la clase Comportamiento (Métodos ) } Corina Flores Villarroel UMSS - Programa MEMI

23 Declaración de Atributos
En la declaración se distinguen 3 elementos : El nombre del tipo de dato o tipo de valores que puede tomar un atributo. El nombre del atributo, denominado también identificador o variable. El separador punto y coma (;) que marca el fin de una declaración Corina Flores Villarroel UMSS - Programa MEMI

24 Declaración de Atributos
class Auto{ // Declaración de atributos String color ; String marca ; int modelo ; String placa ; // Declaración y definición de métodos } Separadores Tipo Dato Identificador Corina Flores Villarroel UMSS - Programa MEMI

25 Tipo de Datos Define un conjunto de valores y las operaciones sobre estos valores. Tipos de Datos Constantes Datos que no cambian su valor durante el desarrollo o ejecución de un programa Variables Datos que cambian o modifican su valor durante el desarrollo o ejecución de un pograma. Numéricas Representan el valor numérico especificado. se puede realizar operaciones aritméticas. Ejemplo: 3, 100 ,Pi Alfanuméricas Representan los letreros especificados no se pueden realizar operaciones aritméticas Ejemplo: “CASA” “10” Numéricas Almacenan datos numéricos: Trabajo, Contadoras, Acumuladoras Dimensionadas. Ejemplo: SUMA= A+B Alfanuméricas Almacenan letras, números y caracteres especiales. Ejemplo: A$= “España” RESULTADO = “Aprobado” Corina Flores Villarroel UMSS - Programa MEMI

26 TAREA Averiguar la forma como se representan los tipos de datos en Java. Ej. Numéricos (entero)…. Int Short Corina Flores Villarroel UMSS - Programa MEMI

27 Tipo de Dato: Constante
Datos que no cambian su valor durante el desarrollo o ejecución de un programa double Valor_de_Pi ; Valor_de_Pi = ; Corina Flores Villarroel UMSS - Programa MEMI

28 Tipo de Dato: Variable int velocidad ; 60 120 = velocidad ;
Datos que cambian o modifican su valor durante el desarrollo o ejecución de un programa. int velocidad ; 60 120 = velocidad ; Estado de un objeto Corina Flores Villarroel UMSS - Programa MEMI

29 Tipo de dato: Asignación
Las variables o llamadas también como contenedoras tienen la capacidad de recibir valores de acuerdo al tipo de dato. Del ejemplo … int velocidad = 120 ; Símbolo ASIGNACIÓN Ambos deben corresponder al MISMO tipo de dato Corina Flores Villarroel UMSS - Programa MEMI

30 Tipo de dato: Asignación
TipoDato NombVariable SimbAsignación Valor int velocidad = ; Corina Flores Villarroel UMSS - Programa MEMI

31 Iniciamos con BlueJ Creamos un proyecto
Ingresamos en el entorno de BlueJ Las herramientas dispuestas al lado izquierdo de la ventana, permiten crear: Clases, establecer relaciones entre clases, y efectuar la compilación del código. Se deja algunas direcciones de tutoriales de BlueJ para su revisión: Corina Flores Villarroel UMSS - Programa MEMI

32 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í: /** * Write a description of class Auto here. * (CFV) ( ) */ Corina Flores Villarroel UMSS - Programa MEMI

33 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 documentar internamente el código public class Auto { // Aquí se describen las características o 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: 2009 private String marca; Corina Flores Villarroel UMSS - Programa MEMI

34 Operadores + - * / Tipos de Operadores Aritméticos: Lógicos:
Símbolo que indica qué operación debe llevarse a cabo Tipos de Operadores Permiten realizar operaciones aritméticas, lógicas o de comparación con los diferentes tipos de datos Aritméticos: + - * / Comparación = < > >= <= Lógicos: NOT Negación AND Conjunción OR Disyunción Corina Flores Villarroel UMSS - Programa MEMI

35 Métodos Definen el comportamiento de una clase
Es la agrupación de un conjunto de instrucciones que resuelven una tarea particular. Una invocación (llamada) a un método activa ese comportamiento sobre un determinado objeto. Corina Flores Villarroel UMSS - Programa MEMI

36 Métodos La definición de un método tiene dos partes: El encabezamiento
El cuerpo Así por ejemplo ... tipoRetorno nombreMetodo( [lista_de_parámetros] ) { cuerpoMetodo } Corina Flores Villarroel UMSS - Programa MEMI

37 Métodos public String getColor() Encabezamiento de un método
Contiene a su vez tres elementos: Tipo de resultado o retorno Nombre del método La lista de parámetros que se encuentran entre () Ejemplo: 1 2 3 public String getColor() { // put your code here return color; } Corina Flores Villarroel UMSS - Programa MEMI

38 Iniciamos con BlueJ … cont
Algunas recomendaciones antes de iniciar a escribir código. Nominación de métodos de la clase, comienzan con minúsculas y generalmente es la combinación de dos o tres palabras. public String marcaAuto() { return marca; } public int modeloAuto() return modelo; Corina Flores Villarroel UMSS - Programa MEMI

39 Métodos El tipo de retorno de un método dependerá de:
Si después de procesar los datos, al método no se pide que devuelva un valor, el tipo de retorno será void. En cambio, si se pide por ejemplo, calcular el salario líquido de 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 palabra clave return. Como última instrucción en el cuerpo del método. Corina Flores Villarroel UMSS - Programa MEMI

40 Métodos 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 palabra reservada o ser igual al nombre de una variable que aparece en su cuerpo del método. Corina Flores Villarroel UMSS - Programa MEMI

41 Métodos Parámetro o argumento
Es una variable que es recibida por un método. Un parámetro influye en el comportamiento o el resultado de la ejecución del método. Una variable es un espacio de memoria reservado para almacenar un valor que corresponde a un tipo de dato Corina Flores Villarroel UMSS - Programa MEMI

42 Métodos ACTUALES, permiten enviar valores al método. Se encuentran generalmente en la llamada al método. FORMALES, permiten recibir valores para usar dentro el método. Se encuentran en la definición del método. PARAMETROS Corina Flores Villarroel UMSS - Programa MEMI

43 Métodos Parámetros formales Parámetros actuales
public void setKilometraje(int kilom) { kilometraje = kilom; } Parámetros formales Parámetros actuales auto1.setKilometraje(45) ; Corina Flores Villarroel UMSS - Programa MEMI

44 Llamada a método Existen dos formas de invocar: interna y externa
Para llamar a un método interno, se requiere: nombreMetodo (lista de parámetros) Un nombre relacionado con la tarea que realizará el método. Todos los valores necesarios para ejecutar la tarea, sin especificar sus tipos Así: setValor(double respuesta) ; Corina Flores Villarroel UMSS - Programa MEMI

45 Llamada a método Objeto . método()
La llamada o invocación a un método externo se realiza con 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() Objeto, es el nombre del objeto o la instancia de una clase. Método, es el nombre del método que pertenece a la clase Operador Corina Flores Villarroel UMSS - Programa MEMI

46 Paso de parámetros auto1.setKilometraje(45);
Al hecho de que los parámetros actuales envian valores que 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) Corina Flores Villarroel UMSS - Programa MEMI

47 Paso de parámetros 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 Corina Flores Villarroel UMSS - Programa MEMI

48 El constructor Permite la creación de objetos que pertenecen 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. Corina Flores Villarroel UMSS - Programa MEMI

49 El constructor public class Auto { // Declaración de atributos
private String color; private String marca; private int modelo; private String placa; public Auto() { // Constructor 1 color = "azul"; marca = "ford sport"; modelo = 2010; placa = "777CBA"; } public Auto(String color, String marca, int mod, String pl) { // Constructor 2 this.color = color; this.marca = marca; modelo = mod; placa = pl; } Corina Flores Villarroel UMSS - Programa MEMI

50 Creación de objetos Recordemos que … podemos crear diferentes objetos de una clase, tantos como necesitemos!!! Para crear un objeto o una instancia de una clase Empleamos la palabra reservada new Declarar el identificador que representará al objeto con el tipo de dato que hace referencia a la clase. Después invocamos al constructor de la clase. Corina Flores Villarroel UMSS - Programa MEMI

51 Creación de objetos Así por el ejemplo : Creamos un objeto de nombre auto1 a.) Declaramos el objeto Auto auto1; nombreClase nombreObjeto b.) Definimos el objeto Auto auto1 = new Auto( “amarillo”, “Nissan”, 2006, “241LPZ”) ; Llamada al constructor de la clase Corina Flores Villarroel UMSS - Programa MEMI

52 Corina Flores Villarroel
UMSS - Programa MEMI

53 Ejercicios A continuación … trabajaremos en parejas,
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, por ejemplo: mediocampistas, delanteros, … etc. Un entrenador antes de ingresar al campo de juego debe tener conformado el equipo con los jugadores que cree conveniente, para lo que define una lista con los siguientes datos: nombre del jugador, edad, nacionalida, un número que lo identifique y el rol que cumplirá durante el juego. Corina Flores Villarroel UMSS - Programa MEMI

54 Ejercicios A continuación … trabajaremos en parejas, Se pide:
Identificar las clases Los atributos de las clases identificadas. Los métodos de las clases identificadas. Un método que devuelva el número asignado a un jugador y, otro que muestre simplemente el nombre de un jugador. Corina Flores Villarroel UMSS - Programa MEMI

55 Ejercicios A continuación … trabajaremos en parejas, Se pide:
Representar el modelo de clases Traducir el modelo en código Corina Flores Villarroel UMSS - Programa MEMI

56 Ejercicios A continuación … trabajaremos en parejas, Se pide:
Escribir el constructor para representar un jugador con todos los datos indicados en la descripción. Crear al menos dos objetos utilizando el constructor Con el objeto creado, hacer llamadas a los métodos Corina Flores Villarroel UMSS - Programa MEMI

57 Metacognición Trabajaremos de forma individual 25´, reflexiona sobre
¿Qué haz aprendido? Anota los conceptos que crees no haber comprendido Corina Flores Villarroel UMSS - Programa MEMI

58 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. Una clase, al igual que un objeto tiene atributos y define sus comportamientos V F A través de los atributos, se determinan el estado de un objeto V F Supongamos que tenemos el siguiente código public void Alarma(Int rinrin){ return suena=true; } Examina si existe un error, en caso de advertir, indica ¿cuál es? Corina Flores Villarroel UMSS - Programa MEMI

59 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”, , Sistemas); Estudiante est = estudiante(2002CBA, “Lola”, “Informatica”); ¿Detectas algún error?, ¿cuál (es)?. Explica! … intenta escribir la forma correcta. Corina Flores Villarroel UMSS - Programa MEMI

60 Ejercicios Sea el modelo de clase
Traduce el modelo a código Java, respetando la sintaxis. Figura tamaño color tipo indicarTamaño() establecerTipo(Boolean t) Corina Flores Villarroel UMSS - Programa MEMI


Descargar ppt "Lic. MSc. Corina Flores Villarroel"

Presentaciones similares


Anuncios Google