Boa noite Pessoa!
sou novo aqui no forum, e mais novo ainda em java, estou tentando fazer um programinha pra aquecer, so q não estou conseguindo fazer realmente o q eu quero. dps de procurar algumas horas e testar várias combinações tentando descobrir o q está errado resolvi postar os códigos aqui no forum, espero q alguem me indique um caminho.
o erro q da é na classe Principal cannot find variable e1
[code]public class Empregado {
private String nome;
private int numeroHoras;
private double salarioH;
private double salBruto;
// Construtor inicializa a string nome com vazio, numerohoras com 0 e salarioh com 0.
public Empregado (){
nome="";
numeroHoras= 0;
salarioH=0;
}
/* metodo setEmpregado( como as variaveis estão como private, temos que criar
metodo set para poder atribuir valores à variaveis*/
public void setEmpregado(String nomei, int numHoras, double salHora){
nome= nomei;
numeroHoras= numHoras;
salarioH=salHora;
}
//metodo getEmpregado para as variaveis poder ser exibida na classe principal.
public String getEmpregado(){
return nome;
}
public double getSalBruto(){
return salBruto;
}
/* metodo calcula hora extra com adicional de 50% e devolve o salário bruto do empregado
aqui o metodo não recebe nada. por que? simples pois ele usa as mesmas variáveis que
o usuário atribui valores a ela dentro da main. quando eu chamo e1.calcSalBruto, ele
vai me retornar o calculo do lario bruto para o objeto e1.*/
public double calcSalBruto (){
if(numeroHoras-40<=0)
return numeroHoras*salarioH;
return salBruto = ((numeroHoras-40)*salarioH)*1.5+(40*salarioH);
}
}
[/code]
CLASS PRINCIPAL.
import java.util.Scanner;
public class Principal {
public static void main(String[] args) {
for(int i=0; i<3; i++){
Empregado[] e1 = new Empregado[3];
}
Scanner in = new Scanner(System.in);
for (int i=0;i<3;i++){
e1[i]= new Empregado();
System.out.println("Digite o Nome do empregado, seguido do numero de horas trabalhadas\ne quanto ele ganha por hora:");
String n = in.nextLine();
int ht = in.nextInt();
double vh = in.nextDouble();
e1[i].setEmpregado(n,ht,vh);
e1[i].calcSalBruto();
System.out.print("O nome do Empregado é: "+e1[i].getEmpregado()+"\nO Salario bruto é:"+e1[i].getSalBruto());
}
}
}
Toda crítica e conselhos são bem vindos!!!
Obrigado antecipadamente.