3
respostas

Cannot find simbol

Alguém pode me ajudar? To procurando o problema mas não acho

public class Funcionario{

      String nome;
      String dept;
      double salario;
      String rg;
      Data dataEntrada;

    void recebeAumento(double valor){

         this.salario = salario+valor;

     } 

     double calcSalAnual(double salario){

         double salarioAnual = this.salario*12;
         return salarioAnual;
     }

     void mostra(){

        System.out.println(this.nome);
        System.out.println(this.dept);
        System.out.println(this.salario);
        System.out.println(this.rg);
        System.out.println(dataEntrada.dataFormatada());

     }

}
public class Empresa{

      String nome;
      String cnpj;
      Funcionario[] func;      
      int livre = 0;


  void adiciona(Funcionario f){

   this.func[this.livre] = f;
   this.livre++;

  }

}
public class TestaEmpresa{

  public static void main(String[] args){

    Empresa empresa = new Empresa();    
    empresa.func = new Funcionario[10];

    Funcionario f1 = new Funcionario();
    f1.salario = 9000;
    empresa.adiciona(f1);

  }

}

MENSAGEM DE ERRO:

TestaEmpresa.java:5: error: cannot find symbol
    Empresa empresa = new Empresa();
    ^
  symbol:   class Empresa
  location: class TestaEmpresa
TestaEmpresa.java:5: error: cannot find symbol
    Empresa empresa = new Empresa();
                          ^
  symbol:   class Empresa
  location: class TestaEmpresa
2 errors
3 respostas

Ola Ricardo !

Como esta a estrutura dos pacotes ?

Tem import da classe: Empresa na sua classe :TestaEmpresa ?

Abraço!

Boa noite Cristiano, Primeiro quero te agradecer a se propor a me ajudar, segundo eu consegui compilar, porem com algumas dúvidas, e agradeço se você pude me ajudar de novo.

1 - O problema não era o import, pois estão todos no mesmo pacote.

2 - Eu abri o Netbeans e notei o seguinte: por exemplo tenho minha classe funcionario e dentro dela, tenho minha classe empresa, se eu declarar a classe empresa dentro da classe funcionario ele não apresenta erro na classe funcionario, mais não reconhece a classe empresa quando vou usa-la na testaEmpresa

public class Funcionario{

public class Empresa{

}//chave final da classe empresa

}//chave final da classe funcionario

Se eu fizer assim:

public class Funcionario{

}//chave final da classe funcionario

public class Empresa{

}//chave final da classe empresa

com a classe empresa fora da classe funcionario no Netbeans ele me da a mensagem: "class empresa is public, should be declared in a file named Empresa.java

do primeiro jeito dai quando vou na Testa empresa e faço o seguinte:

//classe TestaEmpresa com o método main

Empresa empresa = new Empresa(); empresa.empregados = new Funcionario[10];

na linha ele da a mensagem, "cannot find symbol" mesma coisa, ai o que eu fiz para conseguir compilar foi ter colocado do primeiro jeito com a classe empresa estática

public class Funcionario{

public static class Empresa{

}//chave final da classe empresa

}//chave final da classe funcionario

Foi ideia de um colega de trabalho porem, nao entendi muito bem o porque

Mais uma coisa q esqueci, pra funcionar teve q ficar assim:

Funcionario.Empresa empresa = new Funcionario.Empresa(); empresa.empregados = new Funcionario[10];