Ainda não entendi realmente quando devo utilizar esses caras já entendi a montagem e pra que serve mas realmete não sei quando deve utilizar eles e isso acabou me impedindo que fazer alguns exercícios que eles presivam ser utilizados...
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Ainda não entendi realmente quando devo utilizar esses caras já entendi a montagem e pra que serve mas realmete não sei quando deve utilizar eles e isso acabou me impedindo que fazer alguns exercícios que eles presivam ser utilizados...
Oi, Matheus! Tudo bem?
Os Getters e Setters são como "portas" que você usa para acessar ou modificar os atributos de uma classe de forma controlada, ao invés de mexer diretamente nos dados, o que podemos aprofundar da seguinte maneira:
O que são Getters e Setters?
Quando usar Getters e Setters?
Proteção dos dados (Encapsulamento): Usamos getters e setters para proteger os dados da classe. Ao invés de deixar os dados livres para qualquer um mudar, usamos essas "portas" para garantir que o dado só seja acessado ou alterado de maneira controlada.
Validação de dados: O setter pode incluir regras para garantir que os dados sejam válidos antes de serem modificados. Por exemplo, se você tem um atributo preco em uma classe Produto, o setter pode verificar se o preço não é negativo, como no exemplo abaixo:
public class Produto {
private double preco;
public double getPreco() {
return preco;
}
public void setPreco(double preco) {
if (preco >= 0) {
this.preco = preco;
} else {
System.out.println("Preço não pode ser negativo");
}
}
}
Facilidade para ajustes futuros: Com getters e setters, você pode mudar a forma como os dados são armazenados ou processados sem afetar o resto do seu código. Por exemplo, se você quiser mudar como o preço é calculado no futuro, é só mexer no setter, sem precisar mudar todo o código que usa esse atributo.
Como isso se aplica ao exercício?
Nesse exercício, se você criar uma classe Produto com atributos como nome e preço, usar getters e setters é uma boa prática, pois mantém o código organizado, seguro e pronto para lidar com mudanças ou situações mais complexas no futuro.
Espero ter ajudado!
Um forte abraço e bons estudos!