Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Duvida Geral

class AtualizaFuncionario {

    public static void main(String[] args) {
        Funcionario f1 = new Funcionario();
        Funcionario f2 = new Funcionario();
        //Funcionario f2 = f1;

        f1.idFuncionario = 0001; // atributo da classe funcionario
        f1.departamento  = "Informatica"; 

//      f1.dataEntrada   = "20/12/2016";  
        f1.dataEntrada   = new DataFuncionario();
        f1.dataEntrada.preencheData(20, 12, 2016);

        f1.salario       = 1000;      
        f1.recebeAumento(500); //metodo da classe Funcionario

        f1.nome.nomeFuncionario = "Joao das Coves";  // attributos da Classe DadosFuncionario
        f1.cpf.cpfFuncionario   = "001.002.003.004-05"; 
        f1.rg.rgFuncionario     = "7.123.256";  

        f1.rua.ruaEndereco       = "Rua do Sobe e Desce"; //Attributos  da classe Endereco
        f1.bairro.bairroEndereco = "Nuinca Aoparece";
        f1.cidade.cidadeEndereco = "Claraval";
        f1.estado.estadoEndereco = "MG";
        f1.cep.cepEndereco       = "123456000";   

        f2.idFuncionario = 0002; // atributo da classe funcionario
        f2.departamento  = "Informatica 2"; 
//      f2.dataEntrada   = "20/11/2016"; 
        f2.dataEntrada   = new DataFuncionario();
        f2.dataEntrada.preencheData(20, 11, 2016);        


        f2.salario       = 2000;      
        f2.recebeAumento(600); //metodo da classe Funcionario

        f2.nome.nomeFuncionario = "Luis das Coves";  // attributos da Classe DadosFuncionario
        f2.cpf.cpfFuncionario   = "006.007.008.009-10"; 
        f2.rg.rgFuncionario     = "8.123.256";  

        f2.rua.ruaEndereco       = "Rua do Sobe e Desce 2"; //Attributos  da classe Endereco
        f2.bairro.bairroEndereco = "Nuinca Aoparece 2";
        f2.cidade.cidadeEndereco = "Claraval 2";
        f2.estado.estadoEndereco = "MG";
        f2.cep.cepEndereco       = "123456000";   

//      if (f1 == f2) {
//          System.out.println("iguais");
//      } else {
//          System.out.println("diferentes");        
//      } 
//       
//      System.out.println("salario atual:" + f1.salario);
//      System.out.println("ganho anual:" + f1.calculaGanhoAnual());
        f1.mostra();
        f2.mostra();
    }    
}

--
class AtualizaEmpresa {
   public static void main (String[] args) {
       Empresa empresa = new Empresa();
       empresa.empregados = new Funcionario[10];

// assim
//     Funcionario f1 = new Funcionario();
//     f1.salario = 1000;
//     f1.dataEntrada = new DataFuncionario();
//     empresa.adiciona(f1);

//     Funcionario f2 = new Funcionario();
//     f2.salario = 1700;
//     f2.dataEntrada = new DataFuncionario();
//     empresa.adiciona(f2);
 //ou assim
       for (int idx = 0; idx < 5; idx++) {
           Funcionario f = new Funcionario();
           f.salario = (1000 + (idx * 100));
           empresa.adiciona(f);
      };


      Funcionario f = new Funcionario();
      f.idFuncionario = 1;

      boolean existe = empresa.contem(f);
      if (existe) {
           System.out.println("Funcionario ja existe");
          } 
     else {
           System.out.println("Funmcionario não existe");
          };



//

//     empresa.empregados[0].mostra();
//     empresa.empregados[1].mostra();
       empresa.mostraEmpregados();
       empresa.mostraTodasAsInformacoes();
      };
};

Como de dentro da clase "AtualizaEmpresa" eu consigo invocar a classe "AtualizaFuncionario"

3 respostas

Fala aí Carlos Luis, blz?

Você pode dentro do método main da classe AtualizaEmpresa utilizar a seguinte declaração: AtualizaFuncionario.main();

Isso irá invocar o método main da classe AtualizaFuncionario.

Espero ter ajudado!

class AtualizaEmpresa {
   public static void main (String[] args) {
       Empresa empresa = new Empresa();
       empresa.empregados = new Funcionario[10];

       //
       AtualizaFuncionario.main();       

// assim
//     Funcionario f1 = new Funcionario();
//     f1.salario = 1000;
//     f1.dataEntrada = new DataFuncionario();
//     empresa.adiciona(f1);

//     Funcionario f2 = new Funcionario();
//     f2.salario = 1700;
//     f2.dataEntrada = new DataFuncionario();
//     empresa.adiciona(f2);
 //ou assim
       for (int idx = 0; idx < 5; idx++) {
           Funcionario f = new Funcionario();
//         f.salario = (1000 + (idx * 100));
           f.setSalario(1000 + (idx * 100));
           empresa.adiciona(f);
      };


      Funcionario f = new Funcionario();
//    f.idFuncionario = 1;
      f.setIdFuncionario(1);
      boolean existe = empresa.contem(f);
      if (existe) {
           System.out.println("Funcionario ja existe");
          } 
     else {
           System.out.println("Funmcionario não existe");
          };



//

//     empresa.empregados[0].mostra();
//     empresa.empregados[1].mostra();
       empresa.mostraEmpregados();
       empresa.mostraTodasAsInformacoes();
      };
};      
--
class AtualizaFuncionario {

    public static void main(String[] args) {
        Funcionario f1 = new Funcionario();
        Funcionario f2 = new Funcionario();
        //Funcionario f2 = f1;

//      f1.idFuncionario = (0001); // atributo da classe funcionario
        f1.setIdFuncionario(0001); // atributo da classe funcionario
//      f1.departamento  = ("Informatica"); 
        f1.setDepartamento("Informatica");         
//      f1.dataEntrada   = "20/12/2016";  

//      f1.dataEntrada   = new DataFuncionario();
//      f1.dataEntrada.preencheData(20, 12, 2016);
        DataFuncionario dataEntrada   = new DataFuncionario();
        dataEntrada.preencheData(20, 12, 2016);
        f1.setDataEntrada(dataEntrada);  


        f1.setSalario(1000);      
        f1.recebeAumento(500); //metodo da classe Funcionario

//      f1.nome.nomeFuncionario = "Joao das Coves";  // attributos da Classe DadosFuncionario
        DadosFuncionario nome = new DadosFuncionario();
        nome.nomeFuncionario = "Joao das Coves";
        f1.setNome(nome);

//      f1.cpf.cpfFuncionario   = "001.002.003.004-05"; 
        DadosFuncionario cpf = new DadosFuncionario();  
        cpf.cpfFuncionario   = "001.002.003.004-05"; 
        f1.setCpf(cpf);

//      f1.rg.rgFuncionario     = "7.123.256";  
        DadosFuncionario rg = new DadosFuncionario();  
        rg.rgFuncionario     = "7.123.256";  
        f1.setRg(rg);

//      f1.rua.ruaEndereco       = "Rua do Sobe e Desce"; //Attributos  da classe Endereco
        Endereco rua = new Endereco();
        rua.ruaEndereco       = "Rua do Sobe e Desce"; //Attributos  da classe Endereco
        f1.setRua(rua);
//      f1.bairro.bairroEndereco = "Nuinca Aoparece";
        Endereco bairro = new Endereco();
        bairro.bairroEndereco = "Nuinca Aoparece";
        f1.setBairro(bairro);
//      f1.cidade.cidadeEndereco = "Claraval";
        Endereco cidade = new Endereco();
        cidade.cidadeEndereco = "Claraval";
        f1.setCidade(cidade);
//      f1.estado.estadoEndereco = "MG";
        Endereco estado = new Endereco();
        estado.estadoEndereco = "MG";
        f1.setEstado(estado);
//      f1.cep.cepEndereco       = "123456000";   
        Endereco cep = new Endereco();
        cep.cepEndereco       = "123456000";   
        f1.setCep(cep);

//      f2.idFuncionario = (0002); // atributo da classe funcionario
        f2.setIdFuncionario(0002); // atributo da classe funcionario
//      f2.departamento  = ("Informatica"); 
        f2.setDepartamento("Informatica");         
//      f2.dataEntrada   = "20/11/2016";  

//      f2.dataEntrada   = new DataFuncionario();
//      f2.dataEntrada.preencheData(20, 11, 2016);
//      DataFuncionario dataEntrada   = new DataFuncionario(); //variavel ja definida anteriormente
        dataEntrada.preencheData(20, 11, 2016);
        f2.setDataEntrada(dataEntrada);  


        f2.setSalario(2000);      
        f2.recebeAumento(600); //metodo da classe Funcionario

//      f2.nome.nomeFuncionario = "Luis das Coves";  // attributos da Classe DadosFuncionario
//      DadosFuncionario nome = new DadosFuncionario(); //variavel ja definida anteriormente
        nome.nomeFuncionario = "Luis das Coves";
        f2.setNome(nome);

//      f2.cpf.cpfFuncionario   = "001.002.003.004-05"; 
//      DadosFuncionario cpf = new DadosFuncionario();  //variavel ja definida anteriormente
        cpf.cpfFuncionario   = "006.007.008.009-10"; 
        f2.setCpf(cpf);

//      f2.rg.rgFuncionario     = "8.123.256";
//      DadosFuncionario rg = new DadosFuncionario();  //variavel ja definida anteriormente
        rg.rgFuncionario     = "7.123.256";  
        f2.setRg(rg);

//      f2.rua.ruaEndereco       = "Rua do Sobe e Desce 2"; //Attributos  da classe Endereco
//      Endereco rua = new Endereco(); //variavel ja definida anteriormente
        rua.ruaEndereco       = "Rua do Sobe e Desce 2"; //Attributos  da classe Endereco
        f2.setRua(rua);
//      f2.bairro.bairroEndereco = "Nunca Aparece 2";
//      Endereco bairro = new Endereco(); //variavel ja definida anteriormente
        bairro.bairroEndereco = "Nunca Aparece 2";
        f2.setBairro(bairro);
//      f2.cidade.cidadeEndereco = "Claraval 2";
//      Endereco cidade = new Endereco(); //variavel ja definida anteriormente
        cidade.cidadeEndereco = "Claraval 2";
        f2.setCidade(cidade);
//      f2.estado.estadoEndereco = "MG";
//      Endereco estado = new Endereco(); //variavel ja definida anteriormente
        estado.estadoEndereco = "MG";
        f2.setEstado(estado);
//      f2.cep.cepEndereco       = "123456000";   
//      Endereco cep = new Endereco(); //variavel ja definida anteriormente
        cep.cepEndereco       = "123456000";   
        f2.setCep(cep);

//      if (f1 == f2) {
//          System.out.println("iguais");
//      } else {
//          System.out.println("diferentes");        
//      } 
//       
//      System.out.println("salario atual:" + f1.salario);
//      System.out.println("ganho anual:" + f1.calculaGanhoAnual());
        f1.mostra();
        f2.mostra();
    }    
}

Quando insiro a chamada da classe "AtualizaFuncionario.main();" na classe AtualizaEmpresa, apresenta o seguinte erro de compilação:

C:\Caca\Alura\CursoJava\JavaIPrimeirosPassos\programas>javac AtualizaEmpresa.java AtualizaEmpresa.java:7: error: method main in class AtualizaFuncionario cannot be applied to given types; AtualizaFuncionario.main(); ^ required: String[] found: no arguments reason: actual and formal argument lists differ in length 1 error

solução!

Desculpe esqueci de passar os parâmetro para o main.

AtualizaFuncionario.main(new String[]{});

Tente assim!