Ajuda com erro de compilação

4 respostas
V

Olá pessoal, não estou conseguindo enxergar um erro de compilação, gostaria que me dessem uma ajuda

O erro gerado é esse:

C:\Users\Luciano\Desktop>javac FaturaTest.java

FaturaTest.java:23: error: cannot find symbol

fatura1.setFaturaTotal(quantItem, precoItem);

^

symbol:   method setFaturaTotal(int,double)

location: variable fatura1 of type Fatura

1 error

e o código é esse:

public class Fatura

{

private double precoItem;

private int quantItem;

private int numFatura;

private String descItem;

private double totalFatura;
public Fatura(int quantItem, int numFatura, double precoItem, double totalFatura, String descItem)

{

this.quantItem = quantItem;

this.numFatura = numFatura;

this.precoItem = precoItem;

this.descItem = descItem;

}
public void setPrecoItem(double precoItem)

{

if(precoItem > 0.0)

this.precoItem = precoItem;

}
public void setQuantItem(int quantItem)

{

if(quantItem > 0)

this.quantItem = quantItem;

}
public void setNumFatura(int numFatura)

{

this.numFatura = numFatura;

}
public void setDescItem(String descItem)

{

this.descItem = descItem;

}
public double getPrecoItem()

{

return precoItem;

}
public int getQuantItem()

{

return quantItem;

}
public int getNumFatura()

{

return numFatura;

}
public String getDescItem()

{

return descItem;

}

public void setTotalFatura(int quantItem, double precoItem)
{

double totalFatura = quantItem * precoItem;

}

public double getTotalFatura()
{

return totalFatura;

}
}

import java.util.Scanner;

public class FaturaTest

{

public static void main(String args[])

{

Scanner input = new Scanner(<a href="http://System.in">System.in</a>);
Fatura fatura1 = new Fatura(0, 0, 0.0, 0.0, "null");
  
  System.out.printf("Entre com a descricao do item: ");
  String descItem = input.nextLine();
  fatura1.setDescItem(descItem);

  System.out.printf("Entre com a quantidade de itens: ");
  int quantItem = input.nextInt();
  fatura1.setQuantItem(quantItem);
  
  System.out.printf("Entre com o preco do item: ");
  double precoItem = input.nextDouble();
  fatura1.setPrecoItem(precoItem); 

  fatura1.setFaturaTotal(quantItem, precoItem);

  System.out.printf("|quat.|%d   |desc|%s   |valor|%.2f   |total|%2.f|", fatura1.getQuantItem(), fatura1.getDescItem(), fatura1.getPrecoItem(), fatura1.getTotalFatura()); 
  }

}

Como vocês estão vendo, são dois arquivos.Obrigado

4 Respostas

Jederson_Andre

tem uma “virgula” no parametro passado??

seria assim:

setFaturaTotal(int valor, double novoValor);
V

Sim tem.

P

Olá, boa noite!

Não seria o caso do seu método ‘setTotalFatura’ está declarando um ‘double’ ao inveś de fazer referência ao próprio objeto com o ‘this’?

P

O nome do método é ‘setTotalFatura’ e vc está chamando ‘setFaturaTotal’.

Criado 15 de novembro de 2017
Ultima resposta 16 de nov. de 2017
Respostas 4
Participantes 3