Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Get e Sett

Pessoal, durante o estudo surgiu a seguinte dúvida. Os métodos Get e set serve para pegar pegar determinado atributo que esta privado e para alterar o valor desse atributo respectivamente na Main. Minha dúvida é, na classe onde o set estiver somente ele que serve para fazer as validações com if's ou for ou qualquer outra regra de validação ou eu também posso fazer isso utilizando o método get ?

Desde já agradeço a disposição!

1 resposta
solução!

Olá, Alvaro! Tudo bem contigo?

Quando eu deixo meus atributos públicos

    String titular;
    double saldo;
    int agencia;
    int numero;    

qualquer um terá acesso a eles diretamente, por exemplo

c1.titular = "Fulano";

Agora, quando eu deixo privado

    private String titular;
    private double saldo;
    private int agencia;
    private int numero;

Ninguém terá acesso direto, somente através de um intermediário, que neste caso serão meus getters and setters

c1.setAgencia(570);

Ok!!!

Todo Get significa que quero pegar uma informação, trazer essa informação, e todo Set diz que eu quero inserir um dado (ou "setar" um dado), logo, quando esse dado é inserido, ele pode ter alguma validação, como por exemplo um if, for, como você mesmo mencionou, Álvaro!

O importante é que, quando eu chamo um Get logo eu espero um retorno.

    public double getSaldo(){
        return this.saldo;
    }

Por isso do returndentro do Get.

System.out.println(c1.getSaldo());

E quando eu chamo um Set, tenho que estipular um parâmetro (inteiro, caracter ou booleano) para que ele possa validar e guardar essa informação.

    public void setTitular(Cliente titular){
        this.titular = titular;
    }
c1.setTitular("Fulano");

E por que não há return? Por que todo set é um void e todo voidnão há retorno. Experimente colocar return dentro do Set, ele vai reclamar!!!

Por esse motivo temos esses comportamentos diferenciados entre Getters e Setters

Esperto ter esclarecido um pouco mais, Álvaro!

Um abraço e bons estudos!!!