Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Guetters e Setters e instância de objeto

Sobre a instância de objetos de uma classe que contem dados imutáveis como CPF, CNPJ, ID etc. Considerando que não posso permitir a sobre escrita desses dados com um setter por exemplo. Como eu vou capturar esse dado, armazenar e permitir o acesso com getters?

2 respostas
solução!

Olá, Matheus! Tudo bem?

Quando você tem dados que não devem ser alterados após a criação de um objeto, como CPF, CNPJ ou ID, uma prática comum é definir esses atributos como final e inicializá-los através de um construtor. Dessa forma, você garante que esses valores sejam atribuídos apenas uma vez e não possam ser alterados posteriormente.

Aqui está um exemplo de como você pode implementar isso:

public class Pessoa {
    private final String cpf;
    private final String nome;

    public Pessoa(String cpf, String nome) {
        this.cpf = cpf;
        this.nome = nome;
    }

    public String getCpf() {
        return cpf;
    }

    public String getNome() {
        return nome;
    }
}

Neste exemplo, a classe Pessoa possui um atributo cpf declarado como final, o que significa que ele só pode ser atribuído uma vez. O valor é passado através do construtor e não há um método setter para cpf, garantindo que ele permaneça imutável após a criação do objeto. Você ainda pode acessar o valor do CPF usando o método getter getCpf().

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.

Aaah sim, obrigado Armando, eu ainda não tinha chegado na parte dos construtores mas agora faz mais sentido, agradeço a ajuda!