programación i - Universidad ORT Uruguay
programación i - Universidad ORT Uruguay
programación i - Universidad ORT Uruguay
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Programación I 71<br />
Semana 7<br />
7.1 Ejemplo: Monedas<br />
El objetivo es diseñar una clase para manejo de monedas y ver diferentes opciones. (Esta clase<br />
se usa luego con otro ejemplo que trata de Cuentas Bancarias).<br />
Cuando se comienza a analizar una clase, debe definirse qué características y qué<br />
comportamientos esperamos que tenga, qué cosas debe poder hacer.<br />
Las monedas sirven para representar montos, como por ejemplo el saldo de una cuenta bancaria<br />
o el precio de un auto. Pueden ser positivas (ganancia) o negativas (pérdida). Deben poderse<br />
imprimir, se deben poder sumar y restar, aunque no tendría sentido que se pudiera dividir o<br />
multiplicar una moneda por otra. También debe ser posible compararlas. Podría analizarse si se<br />
desea llevar monedas de cualquier tipo o específicamente dólares, por ejemplo. En este caso<br />
consideraremos monedas en dólares.<br />
Querría poder utilizar en un main la clase Moneda así:<br />
public class ClasePruebaMoneda {<br />
public static void main (String args[]){<br />
Moneda m1, m2;<br />
m1 = new Moneda(276);<br />
m2 = new Moneda(1,23);<br />
System.out.println(m1);<br />
System.out.println(m1.sumar(m2));<br />
}<br />
}<br />
En una primera implementación de la clase Moneda podría decidirse llevar los dólares por un<br />
lado y los centavos por otro. Así se podría tener:<br />
package moneda;<br />
public class Moneda {<br />
//<br />
// 1era opción: llevar por separado dólares y centavos<br />
//<br />
// variables de instancia<br />
private int dolares;<br />
private int centavos;<br />
// constructores<br />
public Moneda() {<br />
this.setDolares(0);<br />
this.setCentavos(0);<br />
}<br />
public Moneda (int unMontoDolar, int unMontoCentavos) {