Problema ao trabalhar com classes

1 resposta
J

Bom dia, estou dando uma estudada na apostila FJ-11 da Caelum e ao "Bolar" ( Minha lógica pode estar sendo errada ) a UML de um exercicio aqui e tentar aplica-la da forma que imaginei, estou tendo um problema possuo as seguintes classes

class Candidato { 

   String nome; 
   String rg;
   String cpf;
   String dataNascimento;
   String email;
   boolean contratado;

   void admite () { 
        this.contratado = true;
   }


}

e

class Funcionario { 
  String departamento;
  String cargo;
  double salario;
  String dataEntrada;
  Candidato empregado;

      void checaContratado () { 
             if (this.empregado.contratado = true) { 
                    System.out.println(" Este candidato foi contratado ");
             } else { 
                    System.out.println(" Candidato não contratado "); 
              } 

      }  

    void recebeAumento(double quantidade) { 
      this.salario += quantidade;
    } 

   double calculaGanhoAnual () { 
     double Anual = this.salario*12;
     return Anual;
   }


}

Estava querendo que os meus dados ja pré preenchidos de um CANDIDATO que eu desse admite(); passa-se a ser atrelado ao Funcionario.

minha classe de testes esta assim
class TestaFuncionario { 
   public static void mian (String[] args) { 

   Candidato c1;
   c1 = new Candidato();
   c1.nome = "João"; 
   c1.rg = " 555555555";
   c1.cpf = " [telefone removido] ";
   c1.dataNascimento = " 02-07-1994 "; 
   c1.email = "[email removido]";
   c1.admite();

   Funcionario f1 = new Funcionario(c1);
   f1.departamento = "Administrativo";
   f1.cargo = "Auxiliar administrativo"; 
   f1.salario = 814;
   f1.dataEntrada = "02-01-2014";
   f1.recebeAumento(86);
   System.out.println("Salário atual: "+ f1.salario);
   System.out.println("Ganho anual: " + f1.calculaGanhoAnual());

   }

}

O erro que me é apresentado é o

Constructor Funcionario in class Funcionario cannot be applied to given Types; Required : no arguments found : Candidato reason : actual and formal argument lists differ in length.

lembrando que estou no capitulo 4, isso que tentei atribuir new Funcionario(c1); provavelmente deve ser tratado mais a frente da apostila.

Se alguém puder ajudar.

Obrigado!.

1 Resposta

thiago_dias

Falta um construtor na classe Funcionario que tenha o Candidato como argumento.

Criado 21 de maio de 2014
Ultima resposta 21 de mai. de 2014
Respostas 1
Participantes 2