Data no modo string. Como concatenar com o método?

Estou com o seguite problema: estou desenvolvendo um sistema através da apostila Caellum Java Oriantação a Objeto.

===> Estou com o seguinte problema.

Na página 54 pede para eu concatenar a data que se encontra em valor inteiro.

==> Classe Data:

int dia;
int mes;
int ano;

void formatada(){
String dataString = Integer.toString(dia)+
Integer.toString(mes)+
Integer.toString(ano);

==> A classe “Funcionário” existe o metodo mostrar e dentro dele que colocarei a data formatada

motrar(){
System.out.println("Data de entrada: " = this.dataDeEntrada.formatada());
}

==> A classe “Testa funcionário” que carregará as informações

Data data = new Data();
f1.dataDeEntrada = data;
f1.dataDeEntrada.dia = 01;
f1.dataDeEntrada.mes = 12;
f1.dataDeEntrada.ano = 2016;

void mostrar();

Quando executo a classe Testar funcionário da a seguinte informação:

The metodo formatada is undefined for the type Data

O FormData método é indefinido para o tipo de dados. (informando método indefinido) não to conseguido resolver.

A classe Data e Funcionário estão dentro do mesmo pacote?

Se não estiverem deixe o método formatada() como publico:
public void formatada()…

Tem um metodo em Funcionário motrar(), mas você chama o “mostrar”… foi erro de digitação ou existe um método mostrar em “Testa funcionário”? esta classe está num pacote diferente?

A visibilidade dos seus método está default onde só é possível acessar do mesmo pacote, se fosse public você conseguiria acessar, veja se é isso e se não for, dê mais informações sobre o problema.

=D

Estão todos dentro do mesmo pacote “Empresa”.

Vou ver os outros itens…

Foi mal cara, vi agora que seu formatada tem um retorno void, mude para o retorno String
String formatada() { String dataString = Integer.toString(dia) + Integer.toString(mes) + Integer.toString(ano); return dataString; }

no método “motrar”
motrar(){ System.out.println("Data de entrada: " + this.dataDeEntrada.formatada()); }

Está dando a mensagem: The metodo dataString() is undefined for the type Data

Cla

Classe Funcionário:

package Empresa;

public class Funcionario {
String nome;
double salario;
double ganhoAnual;
Data dataDeEntrada;

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

void calculaGanhoAnual(){
   ganhoAnual = salario * 12;
    
    
}

public void mostrar(){
    System.out.println("Nome: " + this.nome);
    System.out.println("Salário: "+ this.salario);
    System.out.println("ganho anual: " + this.ganhoAnual);
    System.out.println(dataDeEntrada);
    
    System.out.println("Dia: " + this.dataDeEntrada.dia);
    System.out.println("Mês " + this.dataDeEntrada.mes);
    System.out.println("Ano " + this.dataDeEntrada.ano);
    System.out.println("Data de entrada: " + this.dataDeEntrada.formatada());

 }

}

Classe Data:

package Empresa;

public class Funcionario {
String nome;
double salario;
double ganhoAnual;
Data dataDeEntrada;

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

void calculaGanhoAnual(){
   ganhoAnual = salario * 12;
    
    
}

public void mostrar(){
    System.out.println("Nome: " + this.nome);
    System.out.println("Salário: "+ this.salario);
    System.out.println("ganho anual: " + this.ganhoAnual);
    System.out.println(dataDeEntrada);
    
    System.out.println("Dia: " + this.dataDeEntrada.dia);
    System.out.println("Mês " + this.dataDeEntrada.mes);
    System.out.println("Ano " + this.dataDeEntrada.ano);
    System.out.println("Data de entrada: " + this.dataDeEntrada.formatada());

}

}

Classe TestaFuncionário:

package Empresa;

public class TestaFuncionario {
  public static void main(String [] args){
    Funcionario f1 = new Funcionario();
    
    Data data = new Data();
    f1.dataDeEntrada = data;
    
    f1.dataDeEntrada.dia = 01;
    f1.dataDeEntrada.mes = 12;
    f1.dataDeEntrada.ano = 2016;
    
    
    
    
    f1.nome = "Hugo";
    f1.salario = 100;
    f1.recebeAumento(50);
    f1.calculaGanhoAnual();
    
    
    System.out.println("Salário atual: " +f1.salario);
    System.out.println("Ganho anual: " + f1.ganhoAnual);
    
    f1.mostrar();
    

    
    Funcionario f2 = new Funcionario();
    f2 .nome = "Danilo";
    f2.salario = 100;
    
    if(f1 == f2){
        System.out.println("Iguais");
    }else{
        System.out.println("diferentes");
    }           

    }
}

faltou a classe data… você colou Funcionario 2 vezes

Classe Data:

package Empresa;

public class Data {
    int dia;
    int mes;
    int ano;

   String formatada(){
        String dataString = Integer.toString(dia)
        +Integer.toString(mes)
        +Integer.toString(ano);
        //return dataString();
        return dataString();
   }

Na linha[quote=“kodak, post:8, topic:330162”]
return dataString();
[/quote]
tire os parenteses.

ficaria:
return dataString;

Funcionou, Muito Obrigado.

Ficou assim:

String formatada(){
            String dataString = Integer.toString(dia)+"/"
            +Integer.toString(mes)+"/"
            +Integer.toString(ano);
            return dataString;
}

Dê uma olhada sobre datas antes, existem formas mais corretas:

http://www.mkyong.com/java/java-date-and-calendar-examples/

Valeu.
(Guardei o link para uma futura necessidade).

rsrsrsrsrs…