Duvidas como utilizar o metodo Set e Get

7 respostas
J

Ola!!

Para que serve o metodo Set, o metodo get e utilizado para retornar parametros hinn nada aver né
eu tenho um exemplo abaixo da utilização do metodo set.

class Transferencia

{

private ContaCorrente origem;

private ContaCorrente destino;

private double valor;

// métodos setXXX para os atributos

// origem, destino e valor, exemplo:

public void setOrigem (ContaCorrente origem) {

this.origem = origem;

}

public ContaCorrenet getOrigem () {

return origem;

}

public void realiza () {

origem.saque (valor);

destino.deposito (valor);

}

}

alguem pode me ajudar nessa duvida

Muito obrigado

7 Respostas

B

Não entendi a dúvida?
Vc não consegue utilizar o get/set ou não concorda com a utilização deste?

O método Set serve para ‘setar’ ou parametrizar/modificar os valores de um atributo do objeto.
Isto é utilizado para que os atributos não estejam totalmente ‘abertos’, ou públicos, aos clientes que utilizam o objeto.

Vc não é obrigado a usar os métodos get/set com esse nome. Vc pode utilizarl, por exemplo, alterar/obter, ou qualquer outro nome que quiser. Porém, a utilização de métodos get/set com os nomes ‘get/set’ seguem uma padronização da linguagem Java, além de ser um boa prática de programação.

Espero que seja isto a sua dúvida.
Abraços

C

Não sei se é isso que você quer saber, mas basicamente é pra classe Transferencia saber qual é a CONTA de ORIGEM.

J

não entendo a utilização deles, não sei quando utiliza o metodo set, o get retorna parametros?

descupas estou comesando em java, la na Impacta :oops:

C

Nesse teu exemplo, a classe TRANSFERENCIA precisa saber qual é a conta de origem.

O método SETORIGEM se encarrega disso.
Já o GETORIGEM é reponsável em fornecer a conta de origem.

Acho melhor você dar uma lida sobre encapsulamento, orientação a objetos, essas coisas …

A questão SET e GET são meramente por padrões criados.

Você pode usar COLOCA( set) e PEGA( get ), mas dai fica fora desses padrões.

Mas se você usar nomes estranhos, fora de padrão, outras pessoas que irão utilizar seu código, certamente irão sofrer pra entender.

E quando você estiver num nível de integração de tecnologia, verá que usar padrão será de grande serventia.

J

Então a contacorrete origem seria o numero da conta do cliente Ex:

pagamento.setOrigem (12545-02); <<<<
pagamento.setDestino (26548-03);<<<<

 static public void main (String[] args) {

ContaCorrente contaOrigem = new ContaCorrente();

contaOrigem.deposito (1000.00);

ContaCorrente contaDestino = new ContaCorrente();

contaDestino.deposito (2000.00);

System.out.println (Antes da transferencia);

System.out.println ("Saldo origem = " + contaOrigem.getSaldo ());

System.out.println ("Saldo destino = " + contaDestino.getSaldo ());

Transferencia pagamento = new Transferencia ();

pagamento.setOrigem (12545-02);  <<<<

pagamento.setDestino (26548-03);<<<<

pagamento.setValor (250.00);

pagamento.realiza ();

System.out.println (Depois da transferencia);

System.out.println ("Saldo origem = " + contaOrigem.getSaldo ());

System.out.println ("Saldo destino = " + contaDestino.getSaldo ());

}
B

Bem eu vou dar uma explicação resumida sobre o que é get/set pra vc entender.

Qdo vc define atributos (variáveis), vc tb tem que definir o tipo de acesso a eles:
- public (publico): todo mundo pode acessar diretamente;
- protected (protegido): somente objetos do mesmo tipo de composição poderão acessar, como pais e filhos;
- private (privados): são protegidos. só podem ser acessados por métodos acessadores/modificadores.

Então, os métodos get/set servbem unicamente para fazer esse acesso aos atributos privados.

Vamos ao exemplo:

//criar classe pessoa
public class Pessoa {
  //pessoa tem atrbutos que lhe identificam. cada atributo tem um método de acesso e um tipo de dado, além de seu nome.
  private String nome;
  private int idade;

  //a classe pessoa possui métodos acessadores/modificadores para poder alterar e/ou recuperar os valores dos atributos.
  \\para cada atributo, vc cria um get e set.

  //por padronização, os métodos 'sets' não retornam valores. eles somente modificam valores dos atributos.
  //por isso, os métodos set são precedidos por 'void', que quer dizer não retornar nada.
  public void setNome (String nome){
    this.nome = nome;
  }

  public void setIdade (int idade){
    this.idade = idade;
  }

  //os métodos 'gets' são acessadores, ou sejam recuperam os valores dos atributos
  //eles são precedidos, geralmente, pelo tipo de dado do atributo que deverá ser recfuperado.
  //todo get deve conter um 'return' dentro do seu corpo, que é onde a função termina e retorna o valor a quem pediu.  
  public String getNome(){
    return nome;
  }

  public int getIdade(){
    return idade;
  }
}

Bem, bem resumido é isso.
Dá uma procurada no proejto Jedi e nas apostilas do Caelum. Elas são muito boas para resolver estas questões.

Abrçaos

J

bom eu entendi o get legal, o set ta na ponta da lingua, mais valeu, vou olha nas apostilas

Criado 26 de agosto de 2008
Ultima resposta 26 de ago. de 2008
Respostas 7
Participantes 3