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

Estou com dúvida no curso de Primeiros passos com Java, no exercício 6 do capítulo Começando com Orientação a objetos.

1º o meu deu um erro dizendo que o meu set não pode receber parametro do tipo "Data" pois o parametro que ele recebe "string" Data d = new Data();

d.dia = 03;

d.mes = 04;

d.ano = 1989;

f1.setDataEntrada(d);

2º eu tambem estou utilizando o modificador Private nos meus atributos nao estou conseguido acessar tento atibuir ele a new conta tambem da erro como posso resolver nesse caso

Data d = new Data();

d.dia = 03;

d.mes = 04;

d.ano = 1989;

f1.setDataEntrada() = new Data();

3 eu tentei a terceira forma mais apresentada pelo professo mas da erro de tipo incompativeis pois meu atributo - entradaData - esta como - int -pede pra trocar para o tipo data qual seria a alternativa neste caso? como eu faço pra converter nesse caso, sem ter que altera minha class?


codigo da class TestaFuncionario

f1.dataEntrada = new Data();

f1.dataEntrada.


codigo class Data

public class Data {

int dia;

int mes;

int ano;

public void cadastrarData (int d , int m , int a){

this.dia = d;

this.mes = m;

this.ano = a;

} }


aqui esta mina class Funcionario para da uma analizada:


public class Funcionario {

private String nome;

private String departamento;

private double salario;

public int dataEntrada;

private String rg;

private double aumento;

// seters

public void setNome(String n){

this.nome = n; }

public void setDepartamento(String depar){

this.departamento = depar; }

public void setSalario(double s){

this.salario = s; }

public void setDataEntrada(String data){

this.dataEntrada = data; }

public void setRg(String documento){

this.rg = documento; }

2 respostas
solução!

Ok, vamos por partes:

1- Veja que na sua classe funcionario, o campo Data é um int e não uma Data.

2-O codigo esta errado, você esta tentando atribuir um valor a um método, ao invés de passar um parametro para ele, seu código esta assim: f1.setDataEntrada() = new Data(); Deveria estar: f1.setDataEntrada(new Data());

3- Você precisa alterar seu campo data para ser um objeto do tipo Data e não um int.

.