Não estou conseguindo identificar o que estou fazendo de errado. Esse exercicio ficou um pouco confuso pois o codigo inicial esta diferente do codigo que estamos utilizando até agora. Alguem consegue me orientar sobre o que estou fazendo de errado ?
public class Funcionario {
private String nome;
private String departamento;
private double salario;
public Data dataEntrada;
private String rg;
public void recebeAumento (double aumento) {
this.salario += aumento;
}
public double getGanhoAnual () {
return this.salario * 12;
}
public void mostra() {
System.out.println("Nome: " + this.getNome());
System.out.println("Departamento: " + this.getDepartamento());
System.out.println("RG: " + this.getRg());
System.out.println("Data de entrada: " + this.dataEntrada.getFormatada());
System.out.println("Salario atual: " + this.getSalario());
System.out.println("Ganho Anual: " + this.getGanhoAnual());
System.out.println("");
}
public double getSalario() {
return this.salario;
}
public void setSalario (double salario) {
this.salario = salario;
}
public String getNome() {
return this.nome;
}
public void setNome (String nome) {
this.nome = nome;
}
public String getDepartamento() {
return this.departamento;
}
public void setDepartamento (String departamento) {
this.departamento = departamento;
}
public Data getDataEntrada() {
return this.dataEntrada;
}
public void setDataEntrada (Data dataEntrada) {
this.dataEntrada = dataEntrada;
}
public String getRg() {
return this.rg;
}
public String setRg(String rg) {
this.rg = rg;
}
}
class Empresa {
String nome;
String cnpj;
Funcionario[] empregados;
int livre = 0;
void adciona(Funcionario f) {
this.empregados[this.livre] = f;
this.livre++;
}
void mostraEmpregados() {
for (int i= 0; i< this.livre; i++) {
System.out.println("Funcionario na posicao: " +i);
System.out.println("Salario R$: " + this.empregados[i].salario);
// inserir aqui pra mostrar outros atributos de empregados
}
}
void mostraTodasAsInformacoes() {
for (int i=0; i<this.livre; i++) {
System.out.println("Funcionario na posicao: " + i);
this.empregados[i].mostra();
}
}
}
class Data {
/*resto do código*/
String getDataEntrada() {
return this.dia + "/" + this.mes + "/" + this.ano;
}
}
class TestaEmpresa {
public static void main(String[] args) {
Empresa empresa = new Empresa();
empresa.empregados = new Funcionario[10];
Funcionario f1 = new Funcionario();
f1.setSalario(1000);
empresa.adciona(f1);
Funcionario f2 = new Funcionario();
f2.setSalario(1700);
empresa.adciona(f2);
//empresa.empregados[0].mostra();
//empresa..empregados[1].mostra();
empresa.mostraEmpregados();
}
}
public class TestaFuncionario {
public static void main(String[] args) {
Funcionario f1 = new Funcionario("Hugo");
Data data = new Data();
data.preencheData(1, 7, 2009);
f1.setSalario(100);
f1.aumento(50);
f1.dataEntrada = data;
f1.mostra();
}
}