Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Eu passei o a data mais na hora de imprimir ficou 0(zero) pq? se eu passei a data: Jaqueline.dataEntrada.formataData(5,9,1995);

class Funcionario6{ String nome; String funcao; Data dataEntrada;

void mostra(){ System.out.println(nome); System.out.println(funcao); System.out.println("Dia: "+dataEntrada.dia); System.out.println("Mes: "+dataEntrada.mes); System.out.println("Ano: "+dataEntrada.ano);

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

void formataData(int dia, int mes, int ano){ dia=dia; mes=mes; ano=ano;

}

} class Teste{ public static void main(String[] args){ Funcionario6 Jaqueline = new Funcionario6(); Jaqueline.nome = "Jaqueline Mendes"; Jaqueline.funcao = "Esteticista";

Data dataEntrada = new Data(); Jaqueline.dataEntrada = dataEntrada; Jaqueline.dataEntrada.formataData(5,9,1995);

Jaqueline.mostra();

} }

1 resposta
solução!

Oi, Janayna

O problema está na hora de você chamar o formataData.

Observe que dentro do método você está fazendo

dia=dia; mes=mes; ano=ano;

Isso significa que você está dizendo que a variável que você passou é igual a ela mesmo, e não à variável de mesmo nome da classe.

Para resolver, basta incluir o prefixo this, que diz pro java que você está se referindo à variável da classe.

this.dia=dia;
        this.mes=mes;
        this.ano=ano;