Criei um exemplo para poder praticar e queria a opinião de vocês.
package funcionario;
public class GuardadorFuncionario {
private Funcionario funcionarios[];
private int indice = 0;
public void armazenaFuncionario(Funcionario funcionario) {
this.funcionarios = new Funcionario[10];
this.funcionarios[indice] = funcionario;
System.out.println("Funcionário Salvo com Sucesso!");
System.out.println(funcionario.toString());
this.indice++;
}
public int getIndice() {
return this.indice;
}
public Funcionario getFuncionario(int posicao) {
return this.funcionarios[posicao];
}
}
package Principal;
import funcionario.Designer;
import funcionario.Funcionario;
import funcionario.Gerente;
import funcionario.GuardadorFuncionario;
public class TesteGuardador {
public static void main(String[] args) {
Gerente gerente = new Gerente("Lúcio", "Gomes", "111.222.444-11", 3230.56f);
Designer designer = new Designer("Túlio", "Ferreira", "332.333.111-11", 2760.54f);
Funcionario faxineiro = new Funcionario("Carlos", "Gomes", "334.222.111-11", 2560.72f);
GuardadorFuncionario guardaFuncionario = new GuardadorFuncionario();
guardaFuncionario.armazenaFuncionario(gerente);
System.out.println();
guardaFuncionario.armazenaFuncionario(designer);
System.out.println();
guardaFuncionario.armazenaFuncionario(faxineiro);
System.out.println("\nTotal de Funcionários: " + guardaFuncionario.getIndice());
System.out.println();
System.out.println(guardaFuncionario.getFuncionario(2));
}
}
Resultado:
Tudo certinho?