Ir ao conteúdo
  • Cadastre-se

Erro na chamada de método


fabao1966

Posts recomendados

Oi, meu cógigo esta rodando, com exceção da ultima linha, que eu chamo o método"SalarioLiquido", ele esta ná última linha do meu código, vocês poderiam me ajudar neste erro?, segui o código:

package Prova;

public class Funcionario extends pessoa{
float salario;
int dia;

public void setSalario(float salario ){
this.salario= salario;
}
float getSalario(){
return this.salario;
}

public void setDia(int dias ){
this.dia= dias;
}
float getDia(){
return this.dia;
}

float DescontoIr(float salario){

if(salario <= 1200){

return salario;
}
else if(salario <= 2000 ){

return (float) (salario * 0.07);//comissao = porcent * valor;
}
else{

return (float) (salario * 0.22);
}

}//fim descontoiIr

float DescontoInss(float salario){

if(salario <= 1200){

return (float) (salario * 0.09);
}
else if(salario <= 2500 ){

return (float) (salario * 0.12);
}
else{

return (float) (salario * 0.19);
}
}



float DescontoPorFalta(float f){
float desconto;
desconto = (float) (14.74 * f);
this.salario = this.salario - desconto;
return desconto;
}//fim descontoporfalta

float DescontoVT(float salario){
float desconto;
desconto = (float) (0.04 * salario);
this.salario = this.salario - desconto;
return desconto;
}

float SalarioLiquido(float salario, float ir, float inss, float falta, float vale){
float liquido;
liquido = (float) (salario - ir - inss - falta - vale);
this.salario = this.salario - liquido;
return liquido;
}

}//fim class

package Prova;
import javax.swing.JOptionPane;
public class IndexFuncionario {




public static void main(String[] args) {
Funcionario f = new Funcionario();



f.setNome(JOptionPane.showInputDialog("Digite o nome da pessoa"));
f.setSalario(Integer.parseInt(JOptionPane.showInputDialog("Digite o Salário ")));
f.setDia(Integer.parseInt(JOptionPane.showInputDialog("Digite os dias de atraso ")));
JOptionPane.showMessageDialog(null, "O desconto do Imposto de Renda é: "+f.DescontoIr(f.getSalario())+"\nO desconto do INSS é: "+f.DescontoInss(f.getSalario())+"\nO com desconto do Vale Transporte é: "+f.DescontoVT(f.getSalario())+"\nO desconto de dias de atraso é: "+f.DescontoPorFalta(f.getDia()));
JOptionPane.showMessageDialog(null,"seu Salário :"+f.getSalario());
[B]JOptionPane.showMessageDialog(null, "O salário líquido é: "+f.SalarioLiquido(f.getSalario(),f.DescontoIr(f.getSalario(),f.DescontoInss(f.getSalario(),f.DescontoVT(f.getSalario(),f.DescontoPorFalta(f.getDia()))))));[/B]





}

}

Link para o comentário
Compartilhar em outros sites

Ola!

Analisando seu código, provavelmente o erro está na passagem de parametro da chamada do método.

Perceba que da forma que está chamando o método, ta faltando parametro.

Tenta usar este aqui


....
JOptionPane.showMessageDialog(null, "O salário líquido é: "+f.SalarioLiquido(f.getSalario(),f.DescontoIr(f.getSalario()),f.DescontoInss(f.getSalario()),f.DescontoVT(f.getSalario()),f.DescontoPorFalta(f.getDia()));


Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!