Bom dia. Na classe Conta, no método transfere, o parâmetro é definido como Conta, e pelo que entendi, qualquer classe filha de Conta pode ser passada como parâmetro para esse método. Sendo assim é possível usar polimorfismo instanciando uma conta como seu próprio objeto, por exemplo, ContaCorrente c1 = new ContaCorrente(). Então qual seria a vantagem de instanciar nesse caso ou em outro como Conta c1 = new ContaCorrente()?