Orientação a Objetos

Programação 3: Orientação a Objetos e Java


Lista Encadeada de Contas

 

Listas de Contas: Assinatura

class Lista {

void inserir (Conta c) {}

void retirar (Conta c) {}

Conta procura (long num) {}

}

 

Listas de Contas: Descrição

class Lista {

private Conta conta;

private Lista prox;

void inserir (Conta c) {

if (this.conta == null) {

this.conta = c;

prox = new Lista();

} else prox.inserir(c);

}

void retirar (Conta c) {

if (conta != null) {

if (conta == c) {

this.conta = prox.conta;

this.prox = prox.prox;

} else prox.retirar(c);

}

}

Conta procura (long num) {

if (conta == null) return null;

else {

if (conta.numero() == num)

return conta;

else return prox.procura(num)

}

}

}

 

Banco: Descrição Modular

class BancoModular {

private Lista contas = new Lista();

void cadastro(Conta c) {contas.inserir(c);}

void debito(long num, double val) {

Conta c;

c = contas.procura(num);

if (c != null) c.debito(val);

else System.out.println("Conta inexistente!");

}

}


Paulo Borba(phmb@di.ufpe.br) e Sérgio Soares(scbs@di.ufpe.br )