Olá Jackson!, tudo bem?,
Bom, tem alguns pontos que eu vejo que causam a falha na compilação, por exemplo na classe ProgramaFunc.
Os seus metodos set devem receber um parâmetro:
Funcionario f1 = new Funcionario();
f1.setSalario(1000);
f1.setNome("Jakson Vieira");
Data data = new Data();
data.preencherData(10, 10, 1992);
f1.setDataEntrada(data);
f1.recebeAumento(600);
Seus metodos get devem apenas retornar o valor, eles não precisam de um parametro... Ex:
public String getRg() {
return this.rg;
}
E a sua classe mostrar poderia ser incorporada na classe Funcionario, pois da forma atual ela não está enxergando os metodoso get...
class Funcionario {
private String nome;
private String rg;
private Data dataEntrada = new Data();
private String departamento;
private double salario;
public void recebeAumento(double aumentaValor) {
this.salario = this.salario + aumentaValor;
}
public double calcularGanhoAnual() {
return this.salario * 12;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getRg() {
return rg;
}
public void setRg(String rg) {
this.rg = rg;
}
public Data getDataEntrada() {
return dataEntrada;
}
public void setDataEntrada(Data dataEntrada) {
this.dataEntrada = dataEntrada;
}
public String getDepartamento() {
return departamento;
}
public void setDepartamento(String departamento) {
this.departamento = departamento;
}
public double getSalario() {
return salario;
}
public void setSalario(double salario) {
this.salario = salario;
}
void mostrarFuncionarios(){
System.out.println("R$: " + getSalario());
System.out.println("Data: " + getDataEntrada().getFormataData());
System.out.println("Ganho Anual: " + calcularGanhoAnual());
System.out.println("Nome: " + getNome());
System.out.println("Departamento: " + getDepartamento());
}
}
Sacou??
Qualquer dúvida manda ai!