3
How do I make the method mostraEmpregados print on screen the name of the employees I’ve already added?
How to build the array within the Enterprise class statement itself, making it every time a Empresa is instantiated, the array of Funcionario that she needs is also created?
package meu.programa;
public class Funcionario {
    String nome;
    String departamento;
    double salario;
    Data dataDeEntrada;
    String rg;
    boolean estaNaEmpresa = true;
    void recebeAumento(double valorDoAumento) {
        salario += valorDoAumento;
        System.out.println("O salario atual do funcionario " + this.nome + " eh: " + this.salario);
    }
    void calculaGanhoAnual () {
        double ganho = salario * 12;
        System.out.println("O ganho anual do funcionario " + this.nome + " eh: " + ganho);
    }
    void demite () {
        if (this.estaNaEmpresa == true) {
            this.estaNaEmpresa = false;
            System.out.println("O funcionario " + this.nome + " foi demitido ...");
        }
        else {
            System.out.println("O funcionario ja foi demitido ...");
        }
    }
    void mostra () {
        System.out.println("Nome: " + this.nome);
        System.out.println("Departamento: " + this.departamento);
        System.out.println("Salario: " + this.salario);
        System.out.println("Data de entrada na empresa: " + this.dataDeEntrada.dataFormatada());
        System.out.println("RG: " + this.rg);
        System.out.println("É funcionario da empresa: " + this.estaNaEmpresa);
    }
}
.
class Empresa {
    String nome;
    String cnpj;
    Funcionario[] empregados;
    void adiciona(Funcionario f) {
        int contador = 0;
        this.empregados[contador] = f;
        contador++;
        if(contador == this.empregados.length) {
            System.out.println("A array está cheio ...");
        }
    }
    void criaArray (int n) {
        this.empregados = new Funcionario [n];
    }
    void mostraEmpregados() {
        for (int i=0; i <= this.empregados.length; i++) {
            System.out.print("Funcionario na pos.: " + i);
            System.out.println(" Nome:" + this.nome);
        }
    }
}
And another class to test the Company class:
package meu.programa;
public class TestaEmpresa {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Empresa empresa = new Empresa();
        empresa.criaArray(5);
        Funcionario f1 = new Funcionario();
        f1.nome = "Victor";
        Funcionario f2 = new Funcionario();
        f2.nome = "Guilherme";
        empresa.adiciona(f1);
        empresa.adiciona(f2);
        empresa.mostraEmpregados();
    }
}
It’s just an exercise. Thank you !
– Victor G