Eu desenvolvi de uma maneira diferente, minha dúvida é se tem problema ficar instanciando dentro do FOR conforme meu código abaixo:
public class Desafio7 {
    public static void main(String[] args) {
        List<ContaPoupanca> contas = new LinkedList<ContaPoupanca>();
        Scanner input = new Scanner(System.in);
        Random random = new Random();
        System.out.print("Digite o número máximo a ser sorteado: ");
        int numMax = input.nextInt();
        System.out.print("Digite a quantidade de Contas: ");
        int qtdeContas = input.nextInt();
        for (int i = 0; i < qtdeContas; i++) {
            ContaPoupanca contaPoupanca = new ContaPoupanca(random.nextInt(numMax));
            contas.add(contaPoupanca);
        }
        input.close();
        Collections.sort(contas);
        for (Conta conta : contas) {
            System.out.println(conta);
        }
    }
} 
            