Вы находитесь на странице: 1из 3

JERARQUIA DE CLASES, CLASES ABSTRACTAS,

POLIMORFISMO

}
Public String muestra_nombre()`
{return nombre}

En el diagrama se presenta la clase abstracta Ccuenta con las


subclases Clase CuentaAhorros y Clase CuentaCorriente.

public double TipoInteres()


{return tipoDeInteres; }
public abstract void comisiones();
public abstract double intereses();
public boolean ingreso(double cantidad)
{if (cantidad < 0) return false;
saldo += cantidad;
return cantidad >= 0;
}

Clase Ccuenta.java
public abstract class Ccuenta
{//atributos
private String nombre;
private String cuenta;
private double saldo;
private double tipoDeInteres;
//metodos
public Ccuenta(String n, String c, double s, double t)
{nombre = n;
cuenta = c;
saldo = s;
tipoDeInteres = t;
}
public double estado()
{return saldo;

public boolean retiro(double cantidad)


{if ((saldo - cantidad)< 0) return false ;
saldo -= cantidad;
return cantidad >=0; }
}

Clase Cuenta Ahorros.


import java.util.*;
public class CuentaAhorros extends Ccuenta
{ private double cuotaMantenimiento;
java.util.Calendar fecha = java.util.Calendar.getInstance();
public CuentaAhorros(String c,String i, double r, int a)
{ super(c,i,r,a); }
public boolean asignarCuotaM(double c)
{ if (c < 0) return false;
cuotaMantenimiento = c;
return c >= 0;

}
public String muestraFecha()
{ String miFecha= fecha.get(java.util.Calendar.DATE) + "/" +
fecha.get(java.util.Calendar.MONTH) + "/" +
fecha.get(java.util.Calendar.YEAR);
//DATE devuelve el entero correspondiente al DIA
return miFecha;
}

if(cuentas[i].estado()>cuentaMayor){
cuentaMayor=cuentas[i].estado();
miCuenta=cuentas[i];

}
}
return miCuenta;
Codigo del Bottom MuestraDatosCliente

public void comisiones()


{ //Se aplica mensualmente mantenimiento de la cuenta
//dia 1 de cada mes
int fa = fecha.get(java.util.Calendar.DATE);
if (fa == 1) retiro(cuotaMantenimiento); }
public double intereses()
{ int fa = fecha.get(java.util.Calendar.DATE);
if (fa != 1) return 0.0;
double InteresesProducidos= 0.0;
InteresesProducidos = estado() *TipoInteres()/1200.0;
// ingresos(InteresesProducidos);
return InteresesProducidos; }
}

private void
btnMuestraClienteActionPerformed(java.awt.event.ActionEvent evt)
{
//Del Frame obtener mediante cajas de texto nombre, cuenta, saldo y
tipodeInteres
//CuentaAhorros cliente01 = new
CuentaAhorros("nombre","cuenta",2.5,300);
Ccuenta[] cc= new Ccuenta[4];
cc[0]= new CuentaAhorros("Miguelito","Ahorros",100,300);
cc[1]= new CuentaAhorros("Gasto","Ahorros",1,20);
cc[2]= new CuentaAhorros("Raul","Ahorros",1000,300);
cc[3]= new CuentaAhorros("Sarita","Ahorros",5000,300);
// SE PRESENTA EL NOMBRE DEL CLIENTE QUE TIENE EL
MAYOR SALDO EN SU CUENTA.

Polimorfismo
Se define el mtodo CuentaMayor del tipo Ccuenta,
que tiene como parmetros un vector de cuentas.
Static Ccuenta CuentaMayor(Ccuenta[] cuentas){
Ccuenta miCuenta=null;
double cuentaMayor=0.0;
for(int i=0; i<cuentas.length; i++)

TA.setText(NOMBRE: + CuentaMayor(cc).muestra_nombre() +
SALDO: + String.valueOf(CuentaMayor(cc).estado()));
EJERCICIOS:
1. Implementar la clase cuenta corriente.
2. Declarar los objetos para esta clase y considerarlos en el
proceso de Cuenta Mayor.

3. Definir un procedimiento para ingresar los clientes de un


Frame y definir un men para dar a opcin de mostrar la
informacin que requiera, as como para ejecutar otras
funciones polimorficas.

Вам также может понравиться