1
resposta

[Dúvida] Acho que tem algo escrito esquisito na Opinião do Professor da Primeira Questão

Na Classe Principal, na sexta linha de texto (oitava linha de espaçamento) ta assim

conta.titular = "João";

Mas não era pra ser

conta.setTitular("João");


Eu to aprendendo ainda, ai não sei ao certo, mas a dúvida surgiu quando eu fui pra segunda questão e tinha essa mesma lógica, só que em vez de estar escrito

pessoa1.nome = "Carowl"; -------------- (Eu não sei se é carowl mesmo ou se era pra ser carol por sinal)

Estava escrito

pessoa1.setNome("Carowl")

1 resposta

Oi Pedro! Tudo bem?

Vou tentar esclarecer isso para você.

Quando você vê algo como conta.titular = "João";, isso significa que o atributo titular é público, ou seja, ele pode ser acessado e modificado diretamente de fora da classe. No entanto, uma das boas práticas em programação orientada a objetos é proteger os dados da classe, tornando-os privados e acessíveis apenas através de métodos. Isso é feito usando métodos chamados getters e setters.

Portanto, a forma mais adequada, seguindo o princípio do encapsulamento, seria usar conta.setTitular("João");. Isso garante que qualquer lógica adicional que você queira aplicar ao definir o titular (como validações, por exemplo) seja feita dentro do método setTitular.

O mesmo se aplica ao exemplo que você mencionou com pessoa1.nome. Usar pessoa1.setNome("Carowl"); é a maneira correta se o atributo nome for privado, pois promove o encapsulamento e a segurança dos dados.

Quanto ao nome "Carowl", pode ser um erro de digitação, mas isso não afeta o conceito que você está aprendendo.

Espero ter ajudado e bons estudos!

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