Olá gente, sou novata em programação Java e estou começando a programar… ainda meio q devagar, mas com todo garra de aprendizado por isso necessitarei demais da ajuda do Forum, não kero sesolução de exercicios, somente uma luz como fazer isso …bom, estou com uma apostila do Caelum com a qual está me dando um excelente suporte, tem um exercicio q pede pra criar uma classe de funcionario (o qual já criei) e pedi depois pra testar uma outra q tenha o main. Então ai surge a dúvida como faço isso? como vou fazer reconhecer a classe criada na classe de teste, pois pelo q entendi terá q ter um outro nome. Sendo que na classe q criei chamada de funcionario quando compilo da o segunte erro: “A classe funcionario não possui uma classe principal”, entendo q essa classe principal é o main q não possui na classe funcionario, isso teria q ficar como? :oops:
Peço desculpas se minha pergunta for boba e sem sentido…
Classes
6 Respostas
para rodar uma classe ela deve ter o main
a sua classe funcionario deve ser utilizada na classe que tem o main...
se seu funcionario tiver um metodo(funçao) que retorna o nome vc pode testar criando uma classe deste jeito:
public class Test {
public static void main(String[] args) throws Exception {
Funcionario fun = new Funcionario();
System.out.println(fun.getNome());
}
}
que vai imprimir o nome...
porem desta forma que eu fiz o eu não passei nenhum dado para a classe funcionario portanto não teria nome certo?
ai a funcionalidade de sua classe é com vc.
ok, então vou criar isso no pacote de teste?
Existe uma outra forma de chamar a classe funcionario sem usar o throws Exception? (ainda não cheguei nessa parte!)
vc pode criar a classe que vai rodar em qualquer lugar, o pacote de testes tem as classes de testes mas geralmente voltadas para algum framework de teste não sei se é o seu caso… qualquer pacote que vc colocar a classe ela vai empenhar seu papel que é imprimir o nome, seja isso um teste ou não
Existe uma outra forma de chamar a classe funcionario sem usar o throws Exception? (ainda não cheguei nessa parte!)
public class Test {
public static void main(String[] args) {
Funcionario fun = new Funcionario();
System.out.println(fun.getNome());
}
}
nextuser,
Gostaria muito de te agradecer… vlw msm pela força e paciencia!!!
Axo q to no caminho certo… vou te enviar meu programa, se vc puder me ajudar como resolvo o problema da situação da funcionario (Ativo ou demitido), te agradeço…
*Classe Funcionario
public class Funcionario {
String nome;
String depto;
double salario;
String admissao;
String rg;
boolean sit;
double bonus;
double novoSalario;
void bonifica(double bonif){
double novoSalario = this.salario + bonif;
this.salario = novoSalario;
}
public void situacao(boolean sit){
boolean situacao = true;
if (situacao == true){
System.out.println("Funcionario demitido"+sit);
}
else {
System.out.println("Funcionario ativo"+sit);
}
}
void mostra() {
System.out.println("Nome: " + this.nome);
System.out.println("Data de Admissao: " + this.admissao);
System.out.println("Departamento: " + this.depto);
System.out.println("Doc Id: " + this.rg);
System.out.println("Salario: " + this.salario);
System.out.println("Bonus: " + this.bonus);
System.out.println("Situação: "+ this.sit);
}
}
Classe Teste Funcionario
public class TestaFuncionario extends Funcionario{
public static void main (String Args[]){
Funcionario f1 = new Funcionario();
f1.nome = "Lilian Viana";
f1.rg = "1122334";
f1.depto = "Informática";
f1.admissao = "01/03/2011";
f1.salario = 5500.00;
f1.bonus = f1.salario * 0.5;
f1.sit = (true);
f1.novoSalario = f1.salario + f1.bonus;
System.out.println(f1);
System.out.println("\nNome = " +f1.nome +"\nRG = " +f1.rg +"\nDepartamento = "+f1.depto +"\nSalario = "+f1.salario +"\n"+"Bonificação = "+f1.bonus);
System.out.println("\nSalário com Bonificação: "+f1.novoSalario+"\n");
System.out.println("\nSituação: "+f1.sit);
Funcionario f2 = new Funcionario();
f2.nome = "Debora Machado";
f2.rg = "5566778";
f2.depto = "Administração";
f2.salario = 3500.00;
f2.bonus = (180);
f2.sit =(false);
f2.novoSalario = f2.salario+f2.bonus;
System.out.println(f2);
System.out.println("\nNome = " +f2.nome +"\nRG = " +f2.rg+"\nDepartamento = "+f2.depto+"\nSalario = "+f2.salario +"\n"+"Bonificação = " +f2.bonus);
System.out.println("\nSalário com Bonificação: "+f2.novoSalario);
System.out.println("\nSituação: "+f2.sit);
}
}