class Data {
  int dia;
  int mes;
  int ano;
  void preencheData (int dia, int mes, int ano) {
       this.dia = dia;
       this.mes = mes;
       this.ano = ano;
  }
  String getFormatadata() {
    return this.dia + "/" + this.mes + "/" + this.ano;
  }
}
class Funcionario {
      private String nome ;
      private String departamento;
      private Double salario;
      private Data dataEntrada;
      private String rg;
      public void setNome(String nome) {
          this.nome = nome;
      }
      public String getNome() {
         return this.nome;
      }
      public void setDepartamento(String departamento) {
           this.departamento = departamento;
      }
      public String getDepartamento() {
        return this.departamento;
     }
      public void setSalario(double salario) {
           this.salario = salario;
      }
      public Double getSalario() {
        return this.salario;
     }
      public void setDataEntrada(Data dataEntrada) {
           this.dataEntrada = dataEntrada;
      }
      public Data getDataEntrada() {
        return this.dataEntrada;
     }
      public void setRg(String rg) {
           this.rg = rg;
      }
      public String getRg() {
        return this.rg;
     }
      public double getGanhoAnual(int acumuladoAte) {
          return this.salario * acumuladoAte;
      }
      void recebeAumento(double aumento) {
        this.salario = this.salario + aumento;
     }
      void mostra() {
         System.out.println("Nome : " + this.nome);
         System.out.println("Departamento : " + this.departamento);
         System.out.println("Salário : R$ " + this.salario);
         System.out.println("Data de entrada : " + this.dataEntrada.getFormatadata());
         System.out.println("RG : " + this.rg);
         System.out.println("");
      }
}
class TestaFuncionario {
   public static void main(String[] args) {
     Funcionario f1 = new Funcionario();
     f1.setNome("Hugo");
     f1.setSalario(100.0);
     f1.setDepartamento("TI");
     f1.setRg("123456");
     f1.setDataEntrada(new Data.preencheData(1, 7, 2009));
     f1.mostra();
  }
}
Ao efetuar o javac TestaFuncionario.java da a seguinte mensagem de error: error: constructor Data inc class Data cannot be applied to given types; f1.setDataEntrada(new Data(1,7,2009));
E se eu trocar f1.setSalario(100.0) para f1.setSalario(100) da a mensagem também
error: incompatible types: int cannot be converted do Double
O que posso fazer?