O Exercicio pediu que fosse alterado os atributos da classe empresa para Private, porem apos eu realizar as modificacoes nos atributos entre eles no atributo empregados, nao consegui mais criar nova empresa, tentei de varias formas mas nao consegui compilar aonde deve estar o erro neste codigo?
class Empresa {
private String nome;
private String CNPJ;
private Funcionario[] empregados;
public Empresa(String CNPJ){
this.CNPJ = CNPJ;
this.empregados = new Funcionario[10];
}
public String getEmpresa(){
return this.nome;
}
public void setEmpregados(String empregados){
this.empregados = Funcionario[] empregados;
}
void adiciona(Funcionario f) {
boolean adicionei = false;
for(int i = 0; i< this.empregados.length; i++){
if(this.empregados[i] == null){
this.empregados[i]=f;
adicionei = true;
break;
}
}
}
public void mostraEmpregados(){
for (int i = 0; i < this.empregados.length; i++){
if(this.empregados[i] == null) continue;
System.out.print("Funcionario na posicao: " + i + " / " + this.empregados[i].getId() + this.empregados[i].nome);
System.out.println(" = Salario R$: " + this.empregados[i].getSalario());
}
}
public void mostraTodasAsInformacoes() {
for (int i = 0; i < this.empregados.length; i++) {
System.out.println("Funcionário na posição: " + this.empregados[i]);
}
}
boolean contem(Funcionario f) {
for (int i = 0; i < this.empregados.length; i++) {
if (f == this.empregados[i]) {
return true;
}
}
return false;
}
}
class Funcionario {
public String nome;
private double salario;
private static int proximoFuncionario = 0;
private int id;
public int getId() {
return this.id;
}
public void setSalario(double salario){
this.salario = salario;
}
public double getSalario(){
return this.salario;
}
public Funcionario(String nome, double salario) { // Construtor
this.nome = nome;
this.salario = salario;
this.id = proximoFuncionario++;
}
}
class TestaEmpresa {
public static void main(String[] args){
Empresa empresa = new setEmpregados ();
//empresa.empregados = new Funcionario[10];
Funcionario f1 = new Funcionario("Marcelo",4000);
System.out.println(f1.getSalario());
empresa.adiciona(f1);
Funcionario f2 = new Funcionario("Fabiana",6000);
empresa.adiciona(f2);
Funcionario f3 = new Funcionario("Junior",8000);
empresa.adiciona(f3);
empresa.mostraEmpregados();
empresa.mostraTodasAsInformacoes();
//empresa.contem();
}
}