Olá. Nesse exemplo da aula, eu desenvolvi o seguinte código:
public class Conta {
private double saldo;
private int agencia;
private int numero;
private Cliente titular;
public void deposita(double valor) {
this.saldo += valor;
}
public boolean saca(double valor) {
if (this.saldo >= valor) {
this.saldo -= valor;
return true;
}
return false;
}
public boolean transfere(double valor, Conta destino) {
if (this.saldo >= valor) {
this.saca(valor);
destino.deposita(valor);
return true;
}
return false;
}
public double getSaldo() {
return this.saldo;
}
public int getNumero() {
return this.numero;
}
public void setNumero(int numero) {
if (agencia <= 0) {
System.out.println("Valor deve ser maior que zero.");
return;
}
this.numero = numero;
}
public int getAgencia() {
return this.agencia;
}
public void setAgencia(int agencia) {
if (agencia <= 0) {
System.out.println("Valor deve ser maior que zero.");
return;
}
this.agencia = agencia;
}
public String getTitular() {
return this.titular.getNome();
}
public void setTitular(Cliente novoCliente) {
this.titular = novoCliente;
}
}
Repare que no getTitular() eu retornei diretamente o this.titular.getNome(). Assim como no setTitular(), eu atribuí como parâmetro o Cliente novoCliente. Utilizar os getters e setters desta forma seria uma boa prática já que evitaria a repetição de mais código (pois o .getNome() ou o new Cliente() seria repetido mais vezes)?