1
resposta

Desafio guardador de contas Object

package br.com.bytebank.banco.modelo;

public class GuardadorDeContasObject {

    private Object[] referencias;
    private int posicaoLivre;

    public GuardadorDeContasObject() {
        this.referencias = new Object[10];
        this.posicaoLivre = 0;
    }

    public void adiciona(Object ref) {
        referencias[this.posicaoLivre] = ref;
        this.posicaoLivre++;
    }

    public int getQuantidadeDeElementos() {
        return this.posicaoLivre;
    }

    public Object getReferencia(int pos) {
        return this.referencias[pos];
    }
}
package br.com.bytebank.banco.teste;

import br.com.bytebank.banco.modelo.Conta;
import br.com.bytebank.banco.modelo.ContaCorrente;
import br.com.bytebank.banco.modelo.GuardadorDeContasObject;

public class TesteGuardadorObject {

    public static void main(String[] args) {

         GuardadorDeContasObject guardador = new GuardadorDeContasObject();

            Object cc = new ContaCorrente(22, 11);
            guardador.adiciona(cc);

            Object cc2 = new ContaCorrente(22, 22);
            guardador.adiciona(cc2);

            int tamanho = guardador.getQuantidadeDeElementos();
            System.out.println(tamanho);

            Object ref = guardador.getReferencia(1);
            System.out.println(((Conta) ref).getNumero());
        }
    }

`

1 resposta

Oie Luiz, tudo bem contigo?

O seu código está ótimo, vejo que seguiu corretamente o código do professor. Segue abaixo uma outra lógica para fazer a mesma coisa:

public class GuardadorDeContasObject {

    private Object[] referencias = new Object[10];
    private int posicaoLivre = 0;

    public void adiciona(Object ref) {
        referencias[this.posicaoLivre] = ref;
        this.posicaoLivre++;
    }

    public int getQuantidadeDeElementos() {
        return this.posicaoLivre;
    }

    public Object getReferencia(int pos) {
        return this.referencias[pos];
    }
}


public class TesteGuardadorObject {

    public static void main(String[] args) {

         GuardadorDeContasObject guardador = new GuardadorDeContasObject();

            Object cc = new ContaCorrente(22, 11);
            guardador.adiciona(cc);

            Object cc2 = new ContaCorrente(22, 22);
            guardador.adiciona(cc2);

            System.out.println(guardador.getQuantidadeDeElementos());


            System.out.println((guardador.getReferencia(1).getNumero()));

        }
    }

Se precisar de algo fico a disposição!

Bons Estudos! :)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software