La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Entendiendo la definición de clases

Presentaciones similares


Presentación del tema: "Entendiendo la definición de clases"— Transcripción de la presentación:

1 Entendiendo la definición de clases
Corina Flores Villarroel Corina Flores V UMSS - Programa MEMI

2 Contenidos Elementos básicos en la definición de clases Campos
Constructores Parámetros Métodos Sentencias de asignación y condicionales Corina Flores V UMSS - Programa MEMI

3 Introducción Lee el siguiente enunciado:
El parque vial de nuestra ciudad, cuenta con un tren para pasear por sus dependencias, si un visitante esta interesado en pasear, todo lo que debe hacer es, colocar al momento de ingresar en una máquina registradora monedas como forma de pago por el servicio. Inmediatamente, la máquina registradora le imprimirá un ticket como respuesta y acumulará el monto de las monedas ingresadas. OJO, aquí se asume que el visitante y la máquina son sensibles al precio del paseo. Corina Flores V UMSS - Programa MEMI

4 Definiendo la clase Recuerda! que, antes de escribir una línea de código, primero debes COMPRENDER el problema El parque vial de nuestra ciudad, cuenta con un tren para pasear por sus dependencias, si un visitante esta interesado en pasear, todo lo que debe hacer es, colocar al momento de ingresar en una monedas como forma de pago por el servicio. Inmediatamente, la máquina registradora le imprimirá un ticket como respuesta y acumulará el monto de las monedas ingresadas. Máquina registradora Corina Flores V UMSS - Programa MEMI

5 Definiendo la clase Veamos qué tenemos (Análisis):
máquina registradora ¿Con qué datos de entrada contamos? Precio Acumulador Total ¿Qué sabe hacer? Obtener el precio Obtener el monto acumulado IngresarMoneda ImprimirTicket() Corina Flores V UMSS - Programa MEMI

6 Definiendo la clase Modelo gráfico (diseño): MaquinaRegistradora
precio acumulador total obtenerPrecio() obtenerMontoAcum() ingresarMoneda() imprimirTicket() Corina Flores V UMSS - Programa MEMI

7 Campos Traducir a código (implementar):
public class MaquinaRegistradora { // El precio del ticket. private int precio; // El monto de monedas ingresadas por cada visitante. private int acumulador; // Guardará el total de monedas ingresadas. private int total; Campos Almacenan datos para un objeto. Tambien se conocen como instancias de variables Corina Flores V UMSS - Programa MEMI

8 Constructor public MaquinaRegistradora(int costo) { precio = costo;
acumulador = 0; total = 0; } Constructor Permite a cada objeto inicializar sus valores apropiadamente cuando éste es creado. Corina Flores V UMSS - Programa MEMI

9 Sentencia de asignación
public MaquinaRegistradora(int costo) { precio = costo; acumulador = 0; total = 0; } La sentencia de asignacion, esta representado por el operador = y realiza la siguiente operacion: Toma el valor del lado derecho del operador y copia en la variable que esta al lado izquierdo del operador. Corina Flores V UMSS - Programa MEMI

10 Métodos Accesores public int getPrecio() { return precio; }
public int getMontoAcum() { return acumulador; } Los metodos accesores, son aquellos que se caracterizan por devolver (retornar) informacion acerca del estado de un objeto Para lo que es necesario aplicar la sentencia return, el cual es responsable de devolver un valor que corresponda con el tipo de retorno del metodo Corina Flores V UMSS - Programa MEMI

11 Métodos modificadores (mutadores)
Los métodos mutadores, son métodos que cambian el estado de un objeto. Los métodos ingresarMoneda e imprimirTicket en este caso son métodos mutadores, porque se encargan de cambiar el valor de uno o más campos de un objeto de tipo máquinaRegistradora cada vez que son llamados. Corina Flores V UMSS - Programa MEMI

12 Métodos modificadores (mutadores)
public void ingresarMoneda(int monto) { acumulador = acumulador + monto; } Tipo de retorno que no retorna ningún valor en su llamada Por tanto, en el cuerpo de un método mutador NO se requiere de la sentencia RETURN Corina Flores V UMSS - Programa MEMI

13 Reflexionando acerca del …
Diseño de la máquina registradora Examinaremos la implementación con el objetivo de mejorar la clase máquinaRegistradora. Veamos cuáles son las deficiencias … No controla que el visitante ingrese las suficientes monedas para pagar el precio del ticket. No reembolsa al visitante, cuando éste paga más que el precio del ticket No verifica si el visitante ingresa un monto válido de moneda, por ejemplo un valor negativo. Corina Flores V UMSS - Programa MEMI

14 Reflexionando acerca del …
¿Cómo remediar estos problemas? Tomando como base la implementación anterior, hay que pensar en los cambios a generar Veamos cuáles son esos cambios … No controla que el visitante … Pregunta y comparar No reembolsa al visitante … Calcular devolverCambio No verifica si …monto válido … Pregunta y comparar Corina Flores V UMSS - Programa MEMI

15 La sentencia condicional
Conocida también como estructura de control de tipo selección if - else Evalúa una condición lógica y elige que sucederá en función al resultado if (condición lógica) { --- bloque de sentencias --- } else { Su sintaxis es: Corina Flores V UMSS - Programa MEMI

16 La sentencia condicional
Condición lógica, significa que entre los paréntesis existirá una operación que como resultado dará un valor de tipo booleano, es decir Verdadero o Falso El bloque de sentencias, se refiere al conjunto de sentencias que se ejecutarán dependiendo del valor del resultado, es decir, por: VERDAD, se ejecuta todo el bloque de sentencias después del if FALSO, se ejecuta todo el bloque de sentencias después del else Corina Flores V UMSS - Programa MEMI

17 La sentencia condicional
Veamos los cambios en el programa … public void ingresarMoneda(int monto) { if (acumulador > 0) { acumulador = acumulador + monto; } else { System.out.println("Por favor, …”); Corina Flores V UMSS - Programa MEMI

18 La sentencia condicional
Notar que … La sentencia condicional permite tomar una de dos posibles acciones dependiendo del resultado del test. Si el test es VERDAD, hace una cosa y otra cosa cuando el test es FALSO El test usa una condición lógica o expresión booleana, por lo que tiene solo dos posibles valores: true o false Corina Flores V UMSS - Programa MEMI

19 La sentencia condicional
Notar que … La sentencia condicional permite tomar una de dos posibles acciones dependiendo del resultado del test. Si el test es VERDAD, hace una cosa y otra cosa cuando el test es FALSO El test usa una condición lógica o expresión booleana, por lo que tiene solo dos posibles valores: true o false Corina Flores V UMSS - Programa MEMI


Descargar ppt "Entendiendo la definición de clases"

Presentaciones similares


Anuncios Google