Tenho um vetor sendo que cada elemento possui 2 atributos
Atributo 2: x0 x1 x2 x3 x4 x5 x6 x7 x8 x9
Atributo 2: y0 y1 y2 y3 y4 y5 y6 y7 y8 y9
Como que faço uma classe genérica para cada elemento, ou seja, cada atributo pode ser de qualquer
classe? E com seria uma classe para esse arranjo, com métodos para inserir e remover?
Cara fiz uns ajustes em suas classes para que as mesmas funcionassem… coloquei alguns coments porque fiquei em duvida do que vc quis fazer, vou colocar só as classes em que alterei algo… Segue:
Conta Corrente
public class ContaCorrente extends Conta {
private float taxaJuros;
public ContaCorrente(float taxaManutencao) {
super();
this.taxaJuros=taxaManutencao;
}
public void atualizarConta() {
this.inserirDinheiro(this.mostrarDinheiro()*taxaJuros);
}
public void inserirDinheiro(float taxaManutencao) {
// Você tem que implementar alguma coisa aqui
// Perceba que você está chamando com a referência
// THIS o método inserirDinheiro, enquanto esse mé-
// todo nem existia em sua classe...
}
public float mostrarDinheiro() {
// Você tem que implementar alguma coisa aqui
// Perceba que você está chamando com a referência
// THIS o método mostrarDinheiro, enquanto esse mé-
// todo nem existia em sua classe...
// ainda fiz esse método retornar algum valor, pois
// você está fazendo um cálculo com ele no método
// atualizarConta()
float b = 1.0f;
return b;
}
}
Conta Poupança
[code]
public class ContaPoupanca extends Conta {
private float taxaManutencao;
public ContaPoupanca(float taxaManutencao) {
super();
this.taxaManutencao=taxaManutencao;
}
public void atualizarConta() {
this.retirarDinheiro(taxaManutencao);
}
public void retirarDinheiro(float taxaManutencao) {
// Você tem que implementar alguma coisa aqui
// Perceba que você está chamando com a referência
// THIS o método retirarDinheiro, enquanto esse mé-
// todo nem existia em sua classe...
}
}[/code]
Banco
[code]
import java.util.ArrayList;
public class Banco {
// Mudei o tipo de List pra ArrayList
// Lembre-se List é o tipo mais Abstrato
// Logo você deve usar um tipo mais concreto
private ArrayList<Conta> listaContas;
public Banco() {
this.listaContas = new ArrayList<Conta>();
}
public void adicionarContaPoupanca(float depositoInicial){
ContaPoupanca poupanca = new ContaPoupanca((float)0.65);
poupanca.inserirDinheiro(depositoInicial);
listaContas.add(poupanca);
}
public void adicionarContaCorrente(float depositoInicial){
// Aqui o nome da variável estava poupanca, alterei pra corrente
ContaCorrente corrente = new ContaCorrente((float)15);
corrente.inserirDinheiro(depositoInicial);
listaContas.add(corrente);
}
public String imprimirExtratoTodasContas(){
StringBuilder extratos = new StringBuilder();
for(Conta conta: listaContas){
extratos.append(conta.getClass().getName()+"\n");
extratos.append(conta.mostrarDinheiro()+"\n");
}
return extratos.toString();
}
public void atualizarContas(){
for(Conta conta: listaContas){
conta.atualizarConta();
}
}