Fala Guilherme, tudo bem ?
Você poderia fazer algo assim:
public class Conta {
private Cliente cliente;
public Conta(String nomeTitular) {
this.cliente = new Cliente();
this.cliente.setNome(nomeTitular);
}
}
Mas perceba que assim a classe Conta toma para si muita responsabilidade sobre a classe do Cliente. Ela precisa por exemplo saber detalhes de implementação da classe Cliente. Se a classe Cliente, por exemplo, passar a receber obrigatoriamente um parametro no seu construtor a classe Conta vai ter que tratar de repassar essa possibilidade. Dizemos que as duas classes estão acopladas. Qualquer alteração na classe Cliente pode afetar a classe Conta.
Veja assim:
public class Conta {
private Cliente cliente;
public Conta(Cliente cliente) {
this.cliente = cliente;
}
}
class Programa {
...main(..) {
Cliente cliente = new Cliente();
cliente.setNome("Guilherme");
Conta conta = new Conta(cliente);
conta.deposita(150);
}
}
Assim a classe Conta que precisa de um Cliente apenas usa a referência. E se a classe Cliente muda, não afeta diretamente a Conta.
Espero ter ajudado. Abraço!