Meu Código não compila por conta do seguinte erro:
error: empregados has private access in Empresa empresa.empregados = new Funcionario[10]; ^ 1 error
Segue código do arquivo Funcionario.java:
public class Funcionario{
//Atributos de Funcionario
//Métodos de Funcionario
}
class Empresa {
private Funcionario[] empregados;
private String nome;
private String cnpj;
private int livre = 0;
public String getNome() {
return this.nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getCnpj() {
return this.cnpj;
}
public void setCnpj(String cnpj) {
this.cnpj = cnpj;
}
public Funcionario getFuncionario(int posicao) {
return this.empregados[posicao];
}
public void setFuncionario(Funcionario f) {
this.empregados[this.livre] = f;
this.livre++;
}
public void mostraEmpregados() {
for (int i = 0; i < this.livre; i++) {
System.out.println("Funcionário na posição: " + i);
System.out.println("R$" + this.empregados[i].getSalario());
}
}
public void mostraTodasAsInformacoes() {
for (int i = 0; i < this.livre; i++) {
System.out.println("Funcionário na posição: " + i);
this.empregados[i].mostra();
}
}
public boolean contem(Funcionario f) {
for (int i = 0; i < this.livre; i++) {
if (f == this.empregados[i]) {
return true;
}
}
return false;
}
}
class Data {
//Atributos de Data
//Métodos de Data
}
class TestaFuncionario {
public static void main(String[] args) {
Funcionario f1 = new Funcionario();
f1.setNome("Hugo");
f1.setDepartamento("TI");
f1.setSalario(100);
f1.recebeAumento(50);
f1.setRg("123456789");
Data d = new Data();
d.preencheData(1, 7, 2015);
f1.setDataEntrada(d);
f1.mostra();
}
}
class TestaEmpresa {
public static void main (String[] args) {
Empresa empresa = new Empresa();
empresa.empregados = new Funcionario[10];
Funcionario f1 = new Funcionario();
f1.setNome("Daniel");
f1.setRg("111111111");
f1.setDepartamento("Tecnologia da Informação");
f1.setSalario(10000);
Data d1 = new Data();
d1.preencheData(3, 10, 1991);
f1.setDataEntrada(d1);
empresa.setFuncionario(f1);
Funcionario f2 = new Funcionario();
f2.setNome("André");
f2.setRg("999999999");
f2.setDepartamento("Portaria");
f2.setSalario(1700);
Data d2 = new Data();
d2.preencheData(1, 4, 1989);
f2.setDataEntrada(d2);
empresa.setFuncionario(f2);
empresa.mostraTodasAsInformacoes();
}
}
==================================================================