Métodos no Netbeans

13 respostas
S

Ops gente!

Estou com uma dúvida aqui!
Não sei como faço para mostrar e imprimir os atributos do funcionario sem precisar fazer o System.out.println… alguém me daria uma sugestão?
Abaixo a questão… :roll:

  1. Modele um funcionário. Ele deve ter o nome do funcionário, o departamento onde
    trabalha, seu salário (double), a data de entrada no banco (String), seu RG (String), e um valor
    booleano que indique se o funcionário está na empresa no momento ou se já foi embora.
    Crie um método bonificar() que aumenta o salário do funcionário de acordo com o
    parâmetro passado como argumento.
    Crie também um método demitir() que não recebe parâmetro algum, só modifica o valor
    booleano indicando que o funcionário não trabalha mais aqui.
    Transforme o modelo acima em uma classe Java. Teste, usando uma outra classe que tenha o main.
    Você deve criar a classe do funcionário chamada Funcionario, e a classe de teste você pode
    nomear como quiser. A de teste deve possuir o método main.
    Crie um método mostra(), que não recebe nem devolve parâmetro algum, e simplesmente
    imprime todos os atributos do nosso funcionário. Dessa maneira você não precisa ficar copiando e
    colando um monte de System.out.println() para cada mudança e teste que fizer com cada um de seus
    funcionários, você simplesmente vai fazer:
    Construa dois funcionários com o new, e compareos
    com o ==. E se eles tiverem os mesmos
    atributos? Para isso você vai precisar criar outra referência:
    Crie duas referências para o mesmo funcionário, compareos
    com o ==. Tire suas conclusões.
    Para criar duas referências para o mesmo funcionário:
    Funcionario f1 = new Funcionario():
    f1.nome = “José”;
    f1.salario = 100;
    Funcionario f2 = f1;
    O que acontece com o if do exercício anterior?

13 Respostas

BrunoBastosPJ

Se você crisar um método toString na classe Funcionario e chamar System.out.println(funcionario) ele vai imprimir o que estiver no seu método, por exemplo

public String toString() {
  return "Nome: "+nome+" Cargo: " + cargo;
}

Abs

S

Oi… valeu pela sugestão…
Mas será que estou indo pelo caminho certo?

public class Funcionario {

String nome;
String departamento;
double salario;
String entradabanco;
String rg;


void bonificar() {
}

void demitir() {
}

public String mostrar(){
return "Nome: “+nome+” Cargo: " + departamento;

}
}

classe de teste
public class Teste {

public static void main(String[] args) {
    Funcionario f1 = new Funcionario();
    f1.nome = " Pedro";
    f1.departamento=" RH";
    f1.rg=" 4.291.123";
    f1.salario= 500;
    f1.entradabanco=" Nao sei o q é";
    
    Funcionario f2 = new Funcionario();
    f2.nome = " Pedro";
    f2.departamento=" RH";
    f2.rg=" 4.291.123";
    f2.salario= 500;
    f2.entradabanco=" Nao sei o q é";
  
      
  
}

}

BrunoBastosPJ

Do jeito que seu professor quer você vai ter que criar o método mostrar da seguinte maneira:

public void mostrar() {
  System.out.println("Nome: "+nome);
  System.out.println("Departamento: "+departamento);
   ...

e na hora dos testes você vai fazer

Funcionario f1 = new Funcionario();
f1.nome = " Pedro";
f1.departamento=" RH";
f1.rg=" 4.291.123";
f1.salario= 500;
f1.entradabanco=" Nao sei o q é"; 

f1.mostrar();

...

Abs

R

Cara muda o nome do seu método mostrar() para toString como sugerido pelo Bruno, pois se vc usar esses dados num comboBox por exemplo basta vc passar o objeto funcionario, com isso vc trabalha com o objeto ao invés de somento um nome, isso fica mais facil para vc posteriormente persistir isso.

BrunoBastosPJ

Eu tinha falado isso mas eu não tinha lido o que o professor estava pedindo hehehehe

Lá no primeiro post o professor pede para criar um método mostrar, por isso fiz o segundo post

Susa a dica do toString ainda é válida, se ficar curiosa da uma pesquisada sobre como ele funciona :wink:

Abs

S

Obrigada pessoal pela ajuda vcs são muito legais…

Mas como estou começando a aprender alguns coisas de classes vou precisar bastante da ajuda de vcs pra resolver esse exercício…

Consegui fazer o método mostrar()… rodou direitinho…
Minha dúvida agora é essa…

Crie um método bonificar() que aumenta o salário do funcionário de acordo com o
parâmetro passado como argumento.

Como que aplico o parâmetro…
é no metódo?dentro dos parênteses? como faço?

Abs!

P

Como você não especificou muito bem oque queira, vou mostra um metodo so com sua assinatura.

public void bonificar( int bonus ){//Não sei qual o tipo da variavel, pode ser um int ou uma String
}

flw

S

humm… o parâmetro vai no parênteses então?
tipo o parâmetro é int?ou seja que viajei?

Mas como faço para bonificar o funcionário com aumento de salário? Preciso fazer um contador? como?
Melhor explicando…
Estabeleço um valor de R$ 500,00 por exemplo e para aumentar esse salário como faço no método bonificar?

A pergunta é a seguinte…

Crie um método bonificar()… que aumenta o salário do funcionário de acordo com o parâmetro passado como argumento…

A pergunta toda está bem no começo do forúm …se alguém puder me ajudar me dando mais dicas de como eu faço…
ficarei muito grata.

Abs!

P

Não tinha visto :grin:

Você pode faze assim:

public void bonificar(double bonus)//parâmetro vai no parenteses{
     salario += bonus;
}

flw

S

tipo assim…

void bonificar( double bonus) {
    bonus= 500; // o bonus é de R$500,00
    salario += bonus; 
               
}

Mas como faço pra imprimir isso? tem que ser na classe teste?

Valeu!!!

P

Não é bem assim, esse bonus sera passado quando vc chamar o metodo.

bonificar(500);

por isso não precisa colocar bonus = 500; pois assim, o bonus sera sempre 500.
Sobre a forma de imprimir, coloque um metodo imprimir(),ou sobrescreva toString() , e coloque todas as informações do do funcionario: nome, salario, salario novo e assim por diante.
flw
P.S.:lembre-se que o fórum não esta aqui para te dar o código e sim te ajudar. :grin:

S

Pessoal obrigada pelas dicas.
Tenho outra dúvida:
Preciso desse método para dizer que a casa é digamos que azul. A primeira linha é a dada pelo professor, eu fiz assim depois…

void pinta(String s) {// professor

Casa c= new Casa();

c.cor=" Azul";

return;
Assim está correto?

Mas eu não utilizei aquele s do lado da String

Porque aquele s?

É para usar no lugar do c, por exemplo?

Mas preciso declarar em uma classe principal novamente?assim

Casa c= new Casa();

c.cor = Azul;

System.out.println(c.cor);

1- Como faço para chamar o método somente e para imprimir a cor da casa, sem precisar repetir a informação, pois senão de nada adiantaria o método…né?
2- Ele precisa ser void? ou oque?

Abraços.

P

Troque o “Azul” pelo s. Faça com que ele retorne a cor da cosa, ou seja mude o tipo de retorno dele para String e na hora de imprimir apenas chame ele dentro do println().
flw

Criado 17 de março de 2008
Ultima resposta 24 de mar. de 2008
Respostas 13
Participantes 4